Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpSqDe 416 of 509 menu
◀ ▶

DELETE в C#

Команда DELETE удаляет строки, прошедшие WHERE. Без условия она очистит всю таблицу.

Удаление "id=1" оставляет COUNT(*) равным 1:

using Microsoft.Data.Sqlite; using SqliteConnection db = new("Data Source=:memory:"); db.Open(); using (SqliteCommand c = db.CreateCommand()) { c.CommandText = "CREATE TABLE t (id INT); INSERT INTO t VALUES (1),(2)"; c.ExecuteNonQuery(); } using (SqliteCommand d = db.CreateCommand()) { d.CommandText = "DELETE FROM t WHERE id = 1"; d.ExecuteNonQuery(); } using SqliteCommand q = db.CreateCommand(); q.CommandText = "SELECT COUNT(*) FROM t"; Console.WriteLine(q.ExecuteScalar());

Если включить внешние ключи, строку-родителя нельзя удалить, пока на неё ссылаются дочерние. В примере таких связей нет: после удаления строки с номером 1 остаётся одна строка.

Создайте таблицу "messages" с пометкой "archived". Добавьте несколько строк, удалите те, где пометка равна 1, и выведите, сколько сообщений осталось.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить