INSERT в C#
Команда INSERT добавляет строку, а
ExecuteNonQuery возвращает, сколько
строк она затронула. В примере слово записано
прямо в текст SQL.
После вставки "sqlite" счётчик
SELECT COUNT(*) даёт 1:
using Microsoft.Data.Sqlite;
using SqliteConnection db = new("Data Source=:memory:");
db.Open();
using (SqliteCommand c = db.CreateCommand())
{
c.CommandText = "CREATE TABLE terms (id INTEGER PRIMARY KEY, word TEXT); INSERT INTO terms (word) VALUES ('sqlite')";
c.ExecuteNonQuery();
}
using SqliteCommand q = db.CreateCommand();
q.CommandText = "SELECT COUNT(*) FROM terms";
Console.WriteLine(q.ExecuteScalar());
Если вставить строку с "id", который уже
есть, SQLite вернёт ошибку: команда не
выполнилась. Это не то же самое, что выборка
без строк. В примере номер не указывают, база
назначает его сама.
Добавьте в таблицу "products" названия
"lamp" и "cable" и выведите,
сколько строк получилось.