Insert (SQL)
INSERT — оператор мови SQL, котрий додає рядки в таблицю або view. В реляційній СКБД можна визначити два варіанти оператора INSERT.
- Однорядковий оператор INSERT дозволяє додавати в таблицю один новий рядок. Він широко використовується в повсякденних аплікаціях, наприклад програмах введення даних.
- Багаторядковий оператор INSERT забезпечує витягування даних з однієї частини бази даних, їх трансформацію і додавання в іншу частину. Використовується зазвичай при пакетній обробці і створенні нових даних.
Однорядковий INSERT
Синтаксис оператора INSERT виглядає так:
INSERT INTO таблиця (колонка1, [колонка2, ... ]) VALUES (значення1, [значення2, ...])
Для SQL2(SQL-92) є дійсним більш розширений синтаксис
INSERT [INTO]
{ table_name WITH ( < table_hint_limited > [ ...n ] )
| view_name
| rowset_function_limited
}
{ [ ( column_list ) ]
{ VALUES
( { DEFAULT | NULL | expression } [ ,...n] )
| derived_table
| execute_statement
}
}
| DEFAULT VALUES
< table_hint_limited > ::=
{ FASTFIRSTROW
| HOLDLOCK
| PAGLOCK
| READCOMMITTED
| REPEATABLEREAD
| ROWLOCK
| SERIALIZABLE
| TABLOCK
| TABLOCKX
| UPDLOCK
}
Багаторядковий INSERT
Синтаксис
INSERT INTO таблиця (колонка1, [колонка2, ... ]) SELECT (колонка1a, [колонка2a, ...]) FROM таблиця_вибірки WHERE ...
В запис, що міститься в середині багаторядкового оператора INSERT, стандарт SQL1 вимагає деяких логічних обмежень:
- В запит не можна включати ORDER BY.
- Таблиця результату запиту повинна містити таку ж кількість колонок, що і оператор INSERT.
- Запит не може бути запитом на об'єднання кількох різних операторів SELECT.
- Ім'я цільової таблиці оператора INSERT не може бути присутнім в виразі FROM запиту на читання чи любого запиту, вкладеного в нього. Таким чином забороняється додавання таблиці саму в себе.
В стандарті SQL2 останні два обмеження були послаблені і в запиті дозволяється об'єднання операторів, об'єднання таблиць і виразів, дозволяється «самододавання».
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.