Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Многострочная инструкция INSERT.




Для добавления в целевую таблицу нескольких строк предназначена многострочная инструкция INSERT, синтаксическая диаграмма которой изображена на рисунке ниже:

 
 

 


В этой разновидности инструкции INSERT значения для новых строк явно не задаются – источником данных служит запрос на выборку, содержащейся внутри инструкции.

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

Для примера создадим запрос, создающий резервную копию информации о всех студентах, проживающих вне Нижнего Новгорода:

 

INSERT INTO stud_info_backup

SELECT * FROM stud_info

WHERE address NOT LIKE ‘NNov%’;

 

На запрос, содержащийся внутри многострочной инструкции INSERT , стандарт SQL нак­ла­дывает следующие ограничения:

· Запрос не может включать блок ORDER BY, т.к. это не имеет смысла.

· Таблица результатов запроса должна содержать количество столбцов , равное длине списка столбцов в инструкции INSERT (или количеству столбцов в целевой таблице, если список столбцов опущен), а типы данных соответствующих столбцов таблицы результатов запроса и целевой таблицы должны быть совместимыми.

· Запрос не может быть запросом на объединение (UNION) нескольких различных инструкций SELECT.

· Имя целевой таблицы инструкции INSERT не может присутствовать в блоке FROM запроса на выборку или любого запроса, вложенного в него. Тем самым запрещается добавление таблицы самой к себе.

Стандарт SQL2 (SQL92) допускает применение операций UNION и JOIN в запросе на выборку, содержащемся внутри инструкции INSERT.

 


Поделиться:

Дата добавления: 2015-04-04; просмотров: 150; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты