Russian Belarusian English German Japanese Ukrainian

Вставка новой записи в таблицу осуществляется оператором Insert, который может иметь вид:

INSERT INTO <имя таблицы> (<список полей>) VALUES (<список значений>)

В списке перечисляются только те поля, значения которых известны. Остальные могут опускаться. Для пропущенных полей значения берутся по умолчанию (если значения по умолчанию заданы) или поля остаются пустыми. Например:

INSERT INTO Pers (Fam, Nam, Par, Sex) VALUES ('Иванов', 'Андрей', 'Андреевич', true)

В этом примере не указан год рождения. Он подставится по умолчанию и в дальнейшем может быть уточнен.

Другая форма оператора Insert использует множество значений, возвращаемых оператором Select. Этот оператор может выбирать записи из какой-то другой таблицы и вставлять их в данную. Синтаксис этой формы Insert:

INSERT INTO <имя таблицы> <оператор Select>

Пусть, например, нужно создать таблицу Old_Pers пожилых людей организации и необходимо заполнить ее соответствующими записями из таблицы Pers. Это можно сделать одним оператором:

INSERT INTO Old_Pers SELECT * FROM Pers WHERE Year_b < 1939

Таблица Old_Pers сразу заполнится множеством соответствующих записей из Pers.

Приведенную форму оператора Insert можно использовать для копирования всех данных одной таблицы в другую, причем эти таблицы могут быть созданы разными СУБД.

Редактирование записей осуществляется оператором Update:

UPDATE <имя таблицы> SET <список вида <поле>=<выражение>> WHERE <условие>

Наличие в этом операторе условия позволяет редактировать не только одну запись, но сразу множество их. Например, если при очередной реорганизации предприятия решили слить «Цех 1» и «Цех 2» в один «Цех 1», то исправление всех записей в таблице можно сделать одним оператором:

UPDATE Pers SET Dep = 'Цех 1' WHERE Dep = 'Цех 2'

Удаление записей осуществляется оператором Delete:

DELETE FROM <имя таблицы> WHERE <условие>

Наличие в операторе условия позволяет удалять не только одну, но сразу множество записей. Например, если при реорганизации предприятия подразделение «Цех 1» ликвидировали и всех его сотрудников уволили из штата данной организации, то удалить из таблицы все соответствующие записи можно оператором:

DELETE FROM Pers WHERE Dep = 'Цех 1'

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий


Поиск по сайту