SQL оператор Insert. Вставка нових записів у таблицю бази даних

Вставка записів здійснюється оператором INSERT, з допомогою якого до таблиці можна добавити одну або декілька записів. При добавленні одного запису оператор INSERT має наступний формат:

INSERT INTO <Ім'я таблиці> [<Список полів>] VALUES (<Список значень>);

Після виконання даної команди до таблиці, ім'я якої вказується після слова INTO додається один запис, для якого заповнюються поля, які містяться в списку. Значення полів буруться зі списку заданого після слова VALUES. Списки полів і списки значень повинні відповідати один одному за кількістю елементів і за типом. При присвоєнні даних для першого поля береться перше значення, для другого — друге і так далі. При цьому порядок полів і значень може відрізнятися від порядку полів у таблиці.

Приклад запиту на добавлення нових даних у таблицю Cars:

Оператор insert

INSERT INTO Cars (model, color, year, price, displacement, mileage) VALUES ('renault', 'Білий', '2005', 7500, '2.0I', '12 т.км');

Тут до таблиці, яка містить інформацію про автомобілі, додається новий рядок, в якому присвоюються значення для полів model, color, year, price, displacement, mileage.

Оператор insert

Список полів у операторі INSERT може бути відсутнім, в цьому випадку необхідно вказати значення для всіх полів таблиці. Порядок і тип цих значень повинен відпвідати порядку і типу полів таблиці.

При вставці у таблицю відразу декількох рядків оператор INSERT має наступний формат:

INSERT INTO <Ім'я таблиці> <Список полів> Оператор SELECT;

В цьому випадку значення полів нових рядків визначаються через значення записів, відібраних з допомогою оператора SELECT. Число даданих рядків дорівнює числу відібраних записів. Список значень полів, які повернув оператор SELECT, має відповідати кільклсті та типу полів, які містяться у списку оператора INSERT.

За допомогою вставки групи записів можна скопіювати дані з однієї таблиці у іншу. При цьому обидві таблиці, зазвичай, мають однакову структуру, ябо їх структури частково збігаються.

Розглянемо запит на добавлення декількох запистів:

INSERT INTO  Cars_copy (id, model, year, price) SELECT c.id, c.model, c.year, c.price FROM cars c;

Тобто у таблицю Cars_copy ми скопіювали інформацію про всі автомобілі і таким чином зробили резервну копію таблиці Cars.

Збережено в категорії: SQL · Мітки: , , , ,

Матеріал був корисним, поділись в соціальних мережах:

Якщо тобі сподобалась дана тема, залиш свій коментар