Я пытаюсь добавить данные в базу данных в SSMS. Согласно моему коду, я получаю успешную вставку, но в таблице базы данных. У меня новая пустая строка без данных. Вот мой пример кода.
SqlConnection conn = new SqlConnection("Server=.\\SQLEXPRESS;Database=OSMSSE;Integrated Security=True;connect timeout =30"); public void AddData(string word){ conn.Open(); string sql = "insert into TestBlock (Words) values(@word)"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.AddWithValue("@word", word.ToLower()); int res = cmd.ExecuteNonQuery(); if ( res > 0) { Console.WriteLine("Inserted"); } conn.Close(); }
А вот изображение таблицы базы данных без данных. Запись таблицы базы данных SS
Таблица базы данных Конструктор SS
Проблема была в этой строке
cmd.Parameters.AddWithValue("@word", word.ToLower());
Это исправить.
cmd.Parameters.Add("@word", (String) word.ToLower());
Как параметры добавляются как объекты.
Исходя из ваших скриншотов, имя вашей таблицы TestBlock2, а не TestBlock. Вот почему вам нужно изменить вашу команду как;
TestBlock2
TestBlock
string sql = "insert into TestBlock2 (Words) values(@word)";
Также у меня есть несколько предложений;
conn
using
AddWithValue
Add
Add(String, SqlDbType, Int32)