Как правильно обновить данные

165
23 августа 2017, 14:36

Создал глобальное соединение с БД. Далее пытаюсь добавить данные:

string query = "INSERT INTO [Table] ([User], [Message], [DataTime]) VALUES (USER,  @Message, GETDATE())";
using (SqlCommand command = new SqlCommand(query, сonnection))
{
    command.Parameters.AddWithValue("@Message", sMessage);
    command.ExecuteNonQuery();
}

Вот пример зачитки с базы:

    public List<TMessage> StrIEnumReturn()
    {
        SqlCommand command = new SqlCommand("select * from [Table] where id>" + i.ToString() + "", сonnection);
        SqlDataReader myReader = command.ExecuteReader();
        List<TMessage> sMess = new List<TMessage>();
        if (myReader.HasRows)
        {
            while (myReader.Read())
            {
                sMess.Add(new TMessage { Id = myReader.GetInt32(0), sUser = myReader.GetString(1), sMessage = myReader.GetString(2), dtTime = myReader.GetDateTime(3) });
            }
        }
        else
        {
            Console.WriteLine("No rows found.");
        }
        myReader.Close();
        return sMess;
    }

Все работает, данные добавляются. Но проблема в том, что после добавления они не отображаются (не перечитываются с БД). Разрываю соединение и заново соединяюсь с БД, данные появляются. Можно ли реализовать это без разрыва соединения?

Answer 1

В SQL Server -е принято разрывать соединение после каждого действия, и соединяться заново. Так как число соединений ограничено. Следовательно нужно каждый раз открывать и разрывать соединение. Извините за беспокойство...

READ ALSO
Как плавно развернуться лицом к врагу

Как плавно развернуться лицом к врагу

ЗдравствуйтеНе так давно я начал изучать Unity3d

856
Вопрос про ссылочные типы данных

Вопрос про ссылочные типы данных

Если string является ссылочным типом, как и class, то почему у str1 и str2 разные значения? По идее обе переменных должны ссылаться на одну и ту же область...

233
XCode 9: UI API called from background thread

XCode 9: UI API called from background thread

Не запускается простейшее ARKit приложениеПросто исходная демо сцена из ARKit для Unity

208