MySQL笔记五之insert插入数据

本文首发于公众号: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. 指定字段插入数据
  2. 不指定字段插入数据

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');

如果想获取更多相关文章,可扫码关注阅读:

作者:Hunter原文地址:https://segmentfault.com/a/1190000043821248

%s 个评论

要回复文章请先登录注册