Компьютеры
и программирование

SQL INSERT, UPDATE, DELETE - вставка, изменение и удаление данных

Операторы SQL INSERT, UPDATE и DELETE предназначены соответственно для вставки, изменения и удаления данных из таблиц баз данных.

Оператор SQL INSERT

Оператор SQL INSERT предназначен для вставки новых данных в базу. В результате его применения в таблице базы данных появляется новая строка. Оператор INSERT имеет следующий синтаксис:

INSERT INTO ИМЯ_ТАБЛИЦЫ (ИМЕНА СТОЛБЦОВ) VALUES (ВСТАВЛЯЕМЫЕ_ЗНАЧЕНИЯ)

Можно писать этот запрос и без имён столбцов:

INSERT INTO ИМЯ_ТАБЛИЦЫ VALUES (ВСТАВЛЯЕМЫЕ_ЗНАЧЕНИЯ)

Пример 1. Есть база портала объявлений. В ней есть таблица Ads, содержащая данные о объявлениях, поданных за неделю (более подробно - в уроке об агрегатных функциях SQL, пример 7). Таблица выглядит так:

IdCategoryPartUnitsMoney
1ТранспортАвтомашины11017600
2НедвижимостьКвартиры8918690
3НедвижимостьДачи5711970
4ТранспортМотоциклы13120960
5СтройматериалыДоски687140
6ЭлектротехникаТелевизоры1278255
7ЭлектротехникаХолодильники1378905
8СтройматериалыРегипс11211760
9ДосугКниги966240
10НедвижимостьДома479870
11ДосугМузыка1177605
12ДосугИгры412665

Для вставки новой строки в эту таблицу используем следующий запрос:

INSERT INTO ADS (Id, Category, Part, Units, Money) VALUES (13, 'Недвижимость', 'Гаражи', 22, 4620)

Или без указания имён столбцов:

INSERT INTO ADS VALUES (13, 'Недвижимость', 'Гаражи', 22, 4620)

В результате выполнения запроса в таблице появится новая строка:

13НедвижимостьГаражи224620

Оператор SQL UPDATE

Оператор SQL UPDATE предназначен для обновления (редактирования) данных в таблице. Он применяется, когда в той или иной строке таблицы уже записаны некоторые данные и нужно внести в них изменения. Оператор UPDATE имеет следующий синтаксис:

UPDATE ИМЯ_ТАБЛИЦЫ SET ИМЯ_СТОЛБЦА_1=ЗНАЧЕНИЕ, ..., ИМЯ_СТОЛБЦА_N=ЗНАЧЕНИЕ WHERE УСЛОВИЕ

Пример 2. База данных и таблица - те же, что и в примере 1.

Требуется изменить значения столбцов Units и Money в строке с ID=4. Для этого пишем следующий запрос:

UPDATE ADS SET Units=148, Money=23680 WHERE ID=4

После выполнения этого запроса соответствующая строка будет содержать следующие данные:

4ТранспортМотоциклы14823680

Оператор SQL DELETE

Оператор SQL DELETE предназначен для удаления данных из таблицы. Он имеет следующий синтаксис:

DELETE FROM ИМЯ_ТАБЛИЦЫ WHERE УСЛОВИЕ

Если не указывать условие, из таблицы будут удалены все строки. Кроме того, следует помнить, что могут быть удалены лишь строки с первичными ключами, на которые не ссылаются внешние ключи в других таблицах (более подробно об ограничениях удаления - в уроке Реляционная модель данных).

Пример 3. База данных и таблица - те же, что и в предыдущих примерах.

Требуется удалить из таблицы строку, имеющую идентификатор 4. Для этого пишем следующий запрос:

DELETE FROM ADS WHERE ID=4

Поделиться с друзьями

Другие темы в блоке "Реляционные базы данных"