🎉欢迎您来到我的MySQL基础复习专栏
☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹
✨博客主页:小小恶斯法克的博客
🎈该系列文章专栏:重拾MySQL
🍹文章作者技术和水平很有限,如果文中出现错误,希望大家能指正🙏
📜 感谢大家的关注! ❤️
目录
DML-介绍
添加数据
1.给指定字段添加数据
2.给全部字段添加数据
3.批量添加数据
DML-介绍
DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增、删、改操作。
1.添加数据(INSERT)
2.修改数据(UPDATE)
3.删除数据(DELETE)
添加数据
1.给指定字段添加数据
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...);
案例: 给czhemp表所有的字段添加数据 ;
注意:身份证是8位的字符串,要加上引号,entrydate是一个date类型
insert into czhemp(id,workno,name,gender,age,idcard,entrydate)
values(1,'1','Itcast','男',10,'123456789012345678','2000-01-01');
插入数据完成之后,我们有两种方式,查询数据库的数据:
方式一:
在左侧的表名上双击,就可以查看这张表的数据
方式二:
可以执行一条查询数据的SQL语句, 语句如下:
select * from czhemp;
执行结构如下:
需要注意的是!!第一个值对应第一个字段,第二个值对应第二个字段,要注意字段和值的一一对应
案例: 若给czhemp表所有的字段添加数据,执行如下SQL,添加的年龄字段值为-1,能否允许?
insert into czhemp(id,workno,name,gender,age,idcard,entrydate)
values(1,'1','Itcast','男',-1,'123456789012345678','2000-01-01');
此时运行此代码后报错:
观察到我们的czhemp表中age它的一个数据类型是tinyint unsigned
因为 employee 表的age字段类型为 tinyint,而且还是无符号的 unsigned ,所以取值只能在
0-255 之间。一旦取值不在范围内则会报错
2.给全部字段添加数据
INSERT INTO 表名 VALUES (值1, 值2, ...);
案例:插入数据到czhemp表,具体的SQL如下:
insert czhemp value (2,'2','小小恶斯法克','男',18,'1234567891233456','2005-01-01');
执行结果如图
这里面要注意的是如果我们不指定字段名称,去写这条指令,代表的是我们要为这个表所有的字段赋值,那么这个时候值的先后顺序要和字段一一对应!!
3.批量添加数据
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...), (值1, 值2, ...), (值
1, 值2, ...) ;
INSERT INTO 表名 VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ;
上面的第一个代码是给指定的字段批量的添加数据
下面的代码是给全部字段批量的添加数据
案例:批量插入数据到czhemp表,具体的SQL如下:
insert into czhemp values(3,'3','沈立聪','男',20,'123456789012345670','2005-01-
01'),(4,'4','李佳成','女',19,'123456789012345670','2005-01-01');
执行结构如下:
注意事项:
插入数据时,指定的字段顺序需要与值的顺序是一一对应的。
字符串和日期型数据应该包含在引号中。
插入的数据大小,应该在字段的规定范围内。
使用批量插入数据,多个值之间使用逗号分隔