INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [PARTITION (partition_name [, partition_name] ...)] [(col_name [, col_name] ...)] { {VALUES | VALUE} (value_list) [, (value_list)] ... | VALUES row_constructor_list } [AS row_alias[(col_alias [, col_alias] ...)]] [ON DUPLICATE KEY UPDATE assignment_list] INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [PARTITION (partition_name [, partition_name] ...)] [AS row_alias[(col_alias [, col_alias] ...)]] SET assignment_list [ON DUPLICATE KEY UPDATE assignment_list] INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [PARTITION (partition_name [, partition_name] ...)] [(col_name [, col_name] ...)] [AS row_alias[(col_alias [, col_alias] ...)]] {SELECT ... | TABLE table_name} [ON DUPLICATE KEY UPDATE assignment_list] value: {expr | DEFAULT} value_list: value [, value] ... row_constructor_list: ROW(value_list)[, ROW(value_list)][, ...] assignment: col_name = [row_alias.]value assignment_list: assignment [, assignment] ...
mysql> USE world; Database changed mysql> mysql> mysql> # Создадим таблицу mysql> mysql> CREATE DATABASE test -> ; Query OK, 1 row affected (0.02 sec) mysql> USE test; Database changed mysql> mysql> mysql> CREATE TABLE users( -> id INT PRIMARY KEY AUTO_INCREMENT, -> name VARCHAR(30) NOT NULL, -> birthday DATETIME, -> profession VARCHAR(30) -> ); Query OK, 0 rows affected (0.10 sec) mysql> mysql> mysql> DESC users; +------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(30) | NO | | NULL | | | birthday | datetime | YES | | NULL | | | profession | varchar(30) | YES | | NULL | | +------------+-------------+------+-----+---------+----------------+ 4 rows in set (0.01 sec) mysql> mysql> mysql> SELECT * FROM users; Empty set (0.00 sec) mysql> mysql> mysql> INSERT INTO users VALUES (NULL, 'Yakoff', NOW(), 'programmer'); Query OK, 1 row affected (0.02 sec) mysql> SELECT * FROM users; +----+--------+---------------------+------------+ | id | name | birthday | profession | +----+--------+---------------------+------------+ | 1 | Yakoff | 2020-05-07 11:45:54 | programmer | +----+--------+---------------------+------------+ 1 row in set (0.00 sec) mysql> INSERT INTO users (name, birthday) VALUES ('Theodor', NOW()), -> ('Mria', NOW()), -> ('Egor', NOW()); Query OK, 3 rows affected (0.01 sec) Records: 3 Duplicates: 0 Warnings: 0 mysql> SELECT * FROM users; +----+---------+---------------------+------------+ | id | name | birthday | profession | +----+---------+---------------------+------------+ | 1 | Yakoff | 2020-05-07 11:45:54 | programmer | | 2 | Theodor | 2020-05-07 11:50:25 | NULL | | 3 | Mria | 2020-05-07 11:50:25 | NULL | | 4 | Egor | 2020-05-07 11:50:25 | NULL | +----+---------+---------------------+------------+ 4 rows in set (0.00 sec) mysql> mysql> mysql> # IGNORE - пропускать дублирующие записи mysql> mysql> INSERT INTO users VALUES (4, 'Maxim', NOW(), 'programmer'), (6, 'Mikael', NOW(), NULL); ERROR 1062 (23000): Duplicate entry '4' for key 'PRIMARY' mysql> INSERT IGNORE INTO users VALUES (4, 'Maxim', NOW(), 'programmer'), (6, 'Mikael', NOW(), NULL); Query OK, 1 row affected, 1 warning (0.00 sec) Records: 2 Duplicates: 1 Warnings: 1 mysql> SELECT * FROM users; +----+---------+---------------------+------------+ | id | name | birthday | profession | +----+---------+---------------------+------------+ | 1 | Yakoff | 2020-05-07 11:45:54 | programmer | | 2 | Theodor | 2020-05-07 11:50:25 | NULL | | 3 | Mria | 2020-05-07 11:50:25 | NULL | | 4 | Egor | 2020-05-07 11:50:25 | NULL | | 6 | Mikael | 2020-05-07 11:54:01 | NULL | +----+---------+---------------------+------------+ 5 rows in set (0.00 sec) mysql>
Оставить комментарий