Insert (SQL): відмінності між версіями
Перейти до навігації
Перейти до пошуку
[неперевірена версія] | [перевірена версія] |
Вилучено вміст Додано вміст
м робот додав: ru:Insert (SQL) |
|||
(Не показано 23 проміжні версії 19 користувачів) | |||
Рядок 1: | Рядок 1: | ||
'''INSERT''' — оператор мови [[ |
'''INSERT''' — оператор мови [[SQL (мова програмування)|SQL]], котрий додає рядки в таблицю або view. |
||
В реляційній [[ |
В реляційній [[СКБД]] можна визначити два варіанти оператора INSERT. |
||
* ''Однорядковий'' оператор INSERT дозволяє додавати в таблицю один новий рядок. Він широко використовується в повсякденних аплікаціях, наприклад програмах введення даних. |
* ''Однорядковий'' оператор INSERT дозволяє додавати в таблицю один новий рядок. Він широко використовується в повсякденних аплікаціях, наприклад програмах введення даних. |
||
* ''Багаторядковий'' оператор INSERT забезпечує витягування даних з однієї частини бази даних, їх трансформацію і додавання в іншу частину. Використовується зазвичай при пакетній обробці і створенні нових даних. |
* ''Багаторядковий'' оператор INSERT забезпечує витягування даних з однієї частини бази даних, їх трансформацію і додавання в іншу частину. Використовується зазвичай при пакетній обробці і створенні нових даних. |
||
==Однорядковий INSERT == |
== Однорядковий INSERT == |
||
Синтаксис оператора INSERT виглядає так: |
|||
<pre> |
<pre> |
||
Рядок 12: | Рядок 12: | ||
</pre> |
</pre> |
||
Для [[SQL-92|SQL2]] є дійсним більш розширений |
Для [[SQL-92|SQL2(SQL-92)]] є дійсним більш розширений синтаксис |
||
<pre> |
<pre> |
||
INSERT [INTO] |
INSERT [INTO] |
||
Рядок 43: | Рядок 43: | ||
</pre> |
</pre> |
||
==Багаторядковий INSERT == |
== Багаторядковий INSERT == |
||
Синтаксис |
Синтаксис |
||
Рядок 60: | Рядок 60: | ||
В стандарті [[SQL-92|SQL2]] останні два обмеження були послаблені і в запиті дозволяється об'єднання операторів, об'єднання таблиць і виразів, дозволяється «самододавання». |
В стандарті [[SQL-92|SQL2]] останні два обмеження були послаблені і в запиті дозволяється об'єднання операторів, об'єднання таблиць і виразів, дозволяється «самододавання». |
||
== |
== Див. також == |
||
* [[Реляційна алгебра]] |
* [[Реляційна алгебра]] |
||
* [[SQL]] |
* [[SQL]] |
||
{{ |
{{SQL}} |
||
{{Compu-prog-stub}} |
|||
[[Категорія:SQL]] |
[[Категорія:SQL]] |
||
[[Категорія:Бази даних]] |
[[Категорія:Бази даних]] |
||
[[cs:INSERT]] |
|||
[[en:Insert (SQL)]] |
|||
[[ja:INSERT (SQL)]] |
|||
[[nl:Insert (SQL)]] |
|||
[[no:Insert (SQL)]] |
|||
[[ru:Insert (SQL)]] |
|||
[[vi:Insert (SQL)]] |
Поточна версія на 21:29, 7 лютого 2017
INSERT — оператор мови SQL, котрий додає рядки в таблицю або view. В реляційній СКБД можна визначити два варіанти оператора 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 INTO таблиця (колонка1, [колонка2, ... ]) SELECT (колонка1a, [колонка2a, ...]) FROM таблиця_вибірки WHERE ...
В запис, що міститься в середині багаторядкового оператора INSERT, стандарт SQL1 вимагає деяких логічних обмежень:
- В запит не можна включати ORDER BY.
- Таблиця результату запиту повинна містити таку ж кількість колонок, що і оператор INSERT.
- Запит не може бути запитом на об'єднання кількох різних операторів SELECT.
- Ім'я цільової таблиці оператора INSERT не може бути присутнім в виразі FROM запиту на читання чи любого запиту, вкладеного в нього. Таким чином забороняється додавання таблиці саму в себе.
В стандарті SQL2 останні два обмеження були послаблені і в запиті дозволяється об'єднання операторів, об'єднання таблиць і виразів, дозволяється «самододавання».
|
Це незавершена стаття про програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |