Mysql:insert
Insert
方式1:单条插入
示例:
INSERT INTO `atguigudb`.`jobs`
(`job_id`, `job_title`, `min_salary`, `max_salary`)
VALUES ('AC_ACCOUNT', 'Public Accountant', 4200, 9000);
atguigudb:数据库名,jobs:表名;如果数据库名省略,默认当前数据库。
方式2:批量插入
示例:
INSERT INTO `atguigudb`.`jobs`
(`job_id`, `job_title`, `min_salary`, `max_salary`)
VALUES
('1', 'Public Accountant', 4200, 9000),
('2', 'Public Accountant', 4200, 9000);
此方式可以指定要插入哪些字段不插入,哪些插入。不指明的字段在插入成功后,数据库展示为null。
有一种特殊的情况,就是数据库A字段默认设为0,在插入时指明A字段但未传值,插入数据库时不是0而是null;如果未指明A字段插入成功时,才是0
方式3:查询插入
示例:
INSERT INTO `atguigudb`.`jobs_copy1`
(`job_id`, `job_title`, `min_salary`, `max_salary`)
SELECT `job_id`, `job_title`, `min_salary`, `max_salary` FROM jobs;
将查询的结果插入到其他表;
PS:
- 保证查询字段和插入的字段保持一致。
- 在插入前保证一一对应字段的数据类型和长度相等。不然可能会出现插入失败或精度丢失的情况。