2014-01-23 2 views
0

У меня есть следующий код в DLL, которые я использую для запроса SQL Server 2008 базы данныхC# SQL Server старые данные

connectionString = @"Server=totmobdb-bod\live_mobile_data;Database=TM5Admin;User Id=ourusername;Password=ourpassword;MultipleActiveResultSets=true;"; 

dbConn.ReturnSingleTable("select Detail from dbo.Details where Name = 'RepairsReport'", mainConnectionString).Rows[0].ItemArray[0].ToString(); 

    public DataTable ReturnSingleTable(string query, string connectionString) 
    { 

     DataSet dataSet = new DataSet(); 
     using (SqlConnection conn = new SqlConnection(connectionString)) 
     { 
      using (SqlDataAdapter adapter = new SqlDataAdapter()) 
      { 
       adapter.SelectCommand = new SqlCommand(query, conn); 
       adapter.Fill(dataSet); 
      }; 

     }; 

     DataTable dataTable = dataSet.Tables[0]; 

     return dataTable; 

    } 

Недавно я изменил значение в базе данных с помощью SQL Server Management Studio.

Проблема в том, что запрос в моем коде несколько раз возвращает старое значение и иногда возвращает новое значение.

Когда я подключаюсь к базе данных, используя то же имя пользователя/пароль, что и запрос, я могу видеть правильное значение.

Любые идеи людей?

ответ

0

Несмотря на то, что SQL Server Management Studio включил неявное завершение, может возникнуть вероятность того, что изменения, которые вы внесли в ваш запрос на обновление, могли не иметь данных в таблице, используйте commit после выполнения запроса.

+0

Я только что запустил следующее на сервере sql, так что пальцы его пересекали. begin transaction update dbo.Details set Detail = 'what we need' where Id = 52 фиксация транзакции обновит вас, когда мы узнаем, что Sid M – Tappies

+0

Это не сработало – Tappies

+1

очистите свой кеш и повторите попытку –

Смежные вопросы