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.

0 ответов

Другие вопросы по тегам