Вступ до вставки в MySQL
Основна мета системи бази даних - зберігання даних у таблиці. Для визначення функціональності в базі даних у нас є різні види команд SQL. У цій темі ми дізнаємось про Вставити в MySQL.
Команди SQL можна класифікувати на такі:
- DDL (мова визначення даних)
- DML (мова маніпулювання даними)
- DQL (мова запиту даних)
- DCL (мова контролю даних)
- TCL (мова контролю транзакцій)
Тут у цій статті ми зосередимось головним чином на DML. Як ми бачимо назву Мова маніпуляції даними, тому колись створена таблиця / база даних, щоб щось маніпулювати, нам потрібні команди DML. Заслугою використання цих команд є те, що у випадку, якщо відбулися неправильні зміни, ми можемо відкотити / скасувати їх.
Далі наведені команди в DML:
1. ВСТАВКА: використовується для вставки нових рядків у таблицю.
INSERT into employee
Values(101, 'abcd');
2. DELETE: Використовується для видалення одного рядка або цілих записів у таблиці.
DELETE TABLE employee;
3. ОНОВЛЕННЯ: Використовується для оновлення наявних записів у таблиці.
UPDATE employee
SET col1 = new_col
WHERE condition;
Синтаксис Insert Command в MySQL
Ми можемо написати твердження INSERT INTO наступними двома способами.
Шлях №1
INSERT INTO table_name
VALUES (value1, value2, ….);
Шлях №2
INSERT INTO table_name (column1, column2, …….)
VALUES (value1, value2, ….);
- INSERT INTO table_name - це команда, яка додає новий рядок у таблицю з назвою `table_name` в базі даних MySQL.
- (колонка_1, стовпець_2, …) - це назви стовпців, до яких буде додано новий запис.
- VALUES (value_1, value_2, …) визначає значення, які потрібно додати в новий рядок.
Додаючи нові записи, нам потрібно бути обережними щодо визначених типів даних, створюючи структуру таблиці.
- Рядок: Усі значення рядків повинні бути укладені одинарними лапками.
- Числові: Числові значення не повинні міститись ні в одних, ні в подвійних лапках.
- Дата: Ці типи даних мають бути в одній цитаті з форматом "РРРР-ММ-DD".
Розглянемо, що існує таблиця "працівника", що складається з таких атрибутів:
Emp_id | Emp_name | Телефон | Електронна пошта | Відділ | Менеджер | Місто |
1001 | Винай | 9876543219 | КСВ | Судхір | Бангалор | |
1002 | Раай | 9764527848 | ІТ | Стівен | Хайдерабад | |
1003 | Сакти | 9567382784 | Автомобільна | Вед | Bhubaneswar |
Якщо ми додаємо значення для всіх стовпців таблиці, нам не потрібно вказувати назви стовпців у запиті, але ми повинні переконатися, що наш новий запис повинен слідувати послідовності стовпця, як визначено в таблиці.
INSERT INTO employee
VALUES (1004, 'Ravi', 9856478398, ' ', 'marketing', 'shiv', 'kolkata');
Якщо у нас немає всіх значень стовпців і ми вставимо деякі з них, тоді ми повинні вказати назви стовпців у запиті.
INSERT INTO employee (emp_id, emp_name, phone, email, manager)
VALUES (1005, 'sam', 9856478398, ' ', 'shivankar');
Реалізація Insert Command в MySQL
Розглянемо, що у нас є такі списки нових записів, які потрібно додати до таблиці бази даних СТУДЕНТ.
Roll_no | Ім'я | Прізвище | Стандартний | Телефон | Процент | Місто |
1 | Сандіп | Кумар | 10 | 9876456726 | 89, 33 | Cuttack |
2 | Шям | 9 | 76 | Bhubaneswar | ||
3 | Сакти | Найк | 6463765776 | 76 | ||
4 | Сид | 8 | 9864876986 | Колката | ||
5 | Винай | Кумар | 10 | 92 |
Ми будемо вставляти ці рядки по черзі в базу даних.
- Почнемо з Sandeep. Тут 'Roll_no', 'Standard', 'Phone' та 'Percenttage' є числовими полями, тому значення в цей стовпець будуть вставлені без лапок.
INSERT INTO student
VALUES (1, 'Sandeep', 'Kumar', 10, 9876456726, 89.33, 'Cuttack');
Примітка. Оскільки у нас є значення всіх стовпців таблиці учнів, нам не потрібно вказувати ім’я стовпця під час використання команди INSERT. Але ми повинні переконатися, що наше значення повинно відповідати порядку стовпців таблиці.
- У випадку запису Shyam ми бачимо, що багато значень відсутні. Тому тут нам потрібно вказати назви стовпців, в які ми хочемо вставити значення.
INSERT INTO student (Roll_no, First_name, Standard, Percentage, City)
VALUES (2, 'Shyam', 9, 76, 'Bhubaneswar');
Примітка. У цьому записі у нас немає значень кожного стовпця. Ось чому нам потрібно вказати всі назви стовпців, у які ми хочемо вставити наші значення, і в порядку цих імен стовпців, ми також повинні згадати значення.
INSERT INTO student (Roll_no, First_name, Last_name, Phone, Percentage)
VALUES (3, 'Sakti', 'naik', 6463765776, 76);
INSERT INTO student (Roll_no, First_name, Standard, Phone, City)
VALUES (4, 'Sid', 8, 9864876986, 'Kolkata');
INSERT INTO student (Roll_no, First_name, Last_name, standard, Percentage)
VALUES (5, 'Vinay', 'Kumar', 10, 92);
Зміна порядку стовпців та значення не матиме впливу на запит INSERT, оскільки потрібне значення не може бути відображено у потрібному стовпці. Таким чином, можуть виникнути такі проблеми, як вставлення числового значення в рядок або навпаки.
У всіх вищезазначених запитах стільки полів, як прізвище Ім'я, Телефон, Місто відсутні. Тож у таких випадках MySQL буде вставляти за замовчуванням значення NULL у ті стовпці, які ми пропустили у запитах.
Вставлення в таблицю з іншої таблиці
Якщо є дві подібні таблиці, і ми хочемо безпосередньо вставити дані з таблиці_1 в таблицю_2, щоб уникнути ручної роботи, ми також можемо використовувати інший тип запиту INSERT. У такому випадку ми повинні використовувати команду SELECT з командою INSERT. В основному команда SELECT підпадає під DQL (Мова запитів даних), яка використовується для пошуку / отримання даних. Команда select також може використовуватися з багатьма типами пунктів.
Основний синтаксис для вставки записів до однієї таблиці з іншої полягає в наступному:
INSERT INTO table_1 SELECT * FROM table_2;
Приклад
Давайте подивимось приклад, наведений нижче:
1. Таблиця замовлень
Номер замовлення | Замовлення_відділ | Ім'я клієнта | Контактний номер | Кількість | Місце |
8465637 | Меблі | Петро | 8659876766 | 1000 | Делі |
9473636 | Прикраси | Олексій | 9863769898 | 800 | Мумбаї |
2. Таблиця замовлень
Номер замовлення | Замовлення_відділ | Ім'я клієнта | Контактний номер | Кількість | Місце |
Тут ми маємо 2 таблиці під назвою Order and Order_archive. Якщо ми перемістимо всі записи з таблиці «Порядок» в «Порядок_архіву», то наступний код може виконати завдання:
INSERT INTO Order_archive SELECT * FROM Order;
Якщо ми хочемо перемістити деякі конкретні стовпці з таблиці «Порядок» в «Порядок_архіву», тоді:
INSERT INTO Order_archive (Order_no, Order_department, Contact_no, Quantity)
SELECT Order_no, Order_department, Contact_no, Quantity FROM Order;
Висновок
Команда Insert дуже корисна, оскільки вона починає грати від часу створення таблиці до кожного разу, коли ми додаємо більше записів до існуючої таблиці. У цій статті ми можемо узагальнити наступні моменти:
- Команда INSERT використовується для додавання нових даних у таблицю.
- Значення дати та рядка мають бути в одній цитаті.
- Числове значення не повинно бути в лапках.
- Під час вставлення записів у конкретні стовпці ім'я та значення стовпців слід відображати в одному порядку.
- Ця команда може також використовуватися для вставки записів з однієї таблиці в іншу таблицю.
Рекомендовані статті
Це посібник із Вставки в MySQL. Тут ми обговорюємо реалізацію Insert Command в MySQL разом з відповідними прикладами та синтаксисом. Ви також можете подивитися наступну статтю.
- Що таке MySQL схема?
- MySQL String функції
- Що таке MySQL?
- Як встановити MySQL
- Приклади впровадження INSERT в Oracle