本文首发于公众号:Hunter后端
原文链接:MySQL笔记五之insert插入数据
上一节介绍了表及字段的信息,这一篇介绍如何插入数据到 MySQL 表
向表中插入数据有两种方式,一种是指定字段,一种是不指定字段。
不指定字段的话,每条数据的个数必须满足表的所有字段,而指定字段则不需要,因为可以有一些字段是有默认值的,不指定值系统会为该字段填上默认值,比如前面设置的 default 0
。
我们接下来用到的测试的表我们设为 book,在 db_test 这个DATABASE 下,以下是该表的创建语句:
CREATE TABLE book(
id int not null AUTO_INCREMENT PRIMARY KEY,
book_name varchar(45),
author varchar(20)
)
- 指定字段插入数据
- 不指定字段插入数据
1、指定字段插入数据
以 book 表为例指定字段插入数据:
insert into book (id, book_name, author) values(1, 'mysql', 'mysql_author');
自增id
在创建表的时候,为 id 字段设置了自增属性,所以,插入数据的时候可以不用为其指定值:
insert into book (book_name, author) values('mysql', 'mysql_author');
插入多条数据
如果是想一次性插入多条数据,可以如下操作:
insert into book (book_name, author) values('mysql', 'mysql_author'), ('python', 'python_author');
直接将插入的多条数据用逗号分隔开
不完全插入数据
对于一些字段,比如有自增属性的 id 字段,或者设置了 default 属性的字段,以及没有设置不允许为 null 的字段,如果插入数据的时候不指定该字段的值,那么会为其设置 null
insert into book (book_name) values('mysql');
然后我们再去查看这张表的数据,可以看到没有被指定值的字段值为 null
2、不指定字段插入数据
如果我们在插入数据的时候不指定字段,也就是说,前面 id, book_name, author 这几个字段都不列出来,那么在插入的时候则需要我们填入所有的数据,示例如下:
insert into book values(100, 'mysql', 'mysql_author');
不指定字段同样满足多条数据同时插入:
insert into book values(101, 'mysql', 'mysql_author'), (102, 'python', 'python_author');
如果想获取更多相关文章,可扫码关注阅读:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。