ODP.NET Получение старых данных
Я работаю с OracleDB, C # и ODP.NET. Я подключаюсь к OracleDB и получаю данные, но получаю старые данные при обновлении данных в таблице. Коды;
string conSTR = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT =
1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCPDB)))";
OracleConnection oracleCON = new OracleConnection() { ConnectionString = "Data Source=" + conSTR + ";User Id =XXXX;Password=XXXX;Pooling=True" };
if (oracleCON.State == System.Data.ConnectionState.Closed)
oracleCON.Open();
tmr.Tick += delegate
{
try
{
OracleCommand command = new OracleCommand();
command.Connection = oracleCON;
command.CommandText = "SELECT state FROM CLX550";
OracleDataReader dataReader = command.ExecuteReader();
while (dataReader.Read())
{
Btn1.Content = dataReader.GetInt16(0).ToString();
}
command.Dispose();
dataReader.Close();
}
catch (Exception exc)
{
MessageBox.Show("ERROR\n" + exc.Message);
}
};
tmr.Start();
В этом примере я получаю данные состояния «1» как int. После обновления данных (как ODP.NET, так и SQL Plus) до «0», но я получаю старые данные, поэтому все равно «1». Если я попытаюсь получить данные в SQL Plus, он вернет текущие данные. В чем причина этого?
Я работаю с базой данных PDB и таблицей синонимов. OracleDB версии 21c.