数据的DML操作:添加数据,修改数据,删除数据。
1.添加数据
格式: insert into 表名[(字段列表)] values(值列表...);
1.1 指定所有字段,给定所有的值:
insert into phone_table(pid,pname,color) values(1,‘小米‘,‘红色‘);
1 insert into phone_table(pid,pname,color) values(1,‘小米‘,‘红色‘); 2 Query OK, 1 row affected (0.07 sec) 3 4 mysql> select * from phone_table; 5 +------+--------+--------+ 6 | pid | pname | color | 7 +------+--------+--------+ 8 | 1 | 小米 | 红色 | 9 +------+--------+--------+ 10 1 row in set (0.00 sec)
这样我就在phone_table中添加了一条数据。
1.2 指定部分字段添加值
insert into phone_table(pname,color) values(‘小米‘,‘红色‘);
1 insert into phone_table(pname,color) values(‘小米‘,‘红色‘); 2 Query OK, 1 row affected (0.07 sec) 3 4 mysql> select * from phone_table; 5 +------+--------+--------+ 6 | pid | pname | color | 7 +------+--------+--------+ 8 | 1 | 小米 | 红色 | 9 | NULL | 小米 | 红色 | 10 +------+--------+--------+ 11 2 rows in set (0.00 sec)
1.3 不指定字段添加值
insert into phone_table value(null,‘华为‘,‘黑色‘);
1 mysql> insert into phone_table value(null,‘华为‘,‘黑色‘); 2 Query OK, 1 row affected (0.06 sec) 3 4 mysql> select * from phone_table; 5 +------+--------+--------+ 6 | pid | pname | color | 7 +------+--------+--------+ 8 | 1 | 小米 | 红色 | 9 | NULL | 小米 | 红色 | 10 | NULL | 华为 | 黑色 | 11 +------+--------+--------+ 12 3 rows in set (0.00 sec)
1.4 批量增加
insert into phone_table values(4,‘小米‘,‘红色‘),(5,‘三星‘,‘白色‘),(6,‘苹果‘,‘金色‘);
1 mysql> insert into phone_table values(4,‘小米‘,‘红色‘),(5,‘三星‘,‘白色‘),(6,‘苹果‘,‘金色‘); 2 Query OK, 3 rows affected (0.04 sec) 3 Records: 3 Duplicates: 0 Warnings: 0 4 5 mysql> select * from phone_table; 6 +------+--------+--------+ 7 | pid | pname | color | 8 +------+--------+--------+ 9 | 1 | 小米 | 红色 | 10 | NULL | 小米 | 红色 | 11 | NULL | 华为 | 黑色 | 12 | 4 | 小米 | 红色 | 13 | 5 | 三星 | 白色 | 14 | 6 | 苹果 | 金色 | 15 +------+--------+--------+ 16 6 rows in set (0.00 sec)
那么这样我们就可以增加很多条数据了。
2.修改数据
格式:update 表名 set 字段1=值1,字段2=值2,字段n=值n... where 条件;
2.1 将pid为1的pname改为vivo,color改为黑色;
1 update phone_table set pname=‘vivo‘,color=‘黑色‘where pid=1; 2 Query OK, 1 row affected (0.14 sec) 3 Rows matched: 1 Changed: 1 Warnings: 0
修改之后的表:
1 mysql> select * from phone_table; 2 +-----+--------+--------+ 3 | pid | pname | color | 4 +-----+--------+--------+ 5 | 1 | vivo | 黑色 | 6 | 2 | 小米 | 红色 | 7 | 3 | 华为 | 黑色 | 8 | 4 | 小米 | 红色 | 9 | 5 | 三星 | 白色 | 10 | 6 | 苹果 | 金色 | 11 +-----+--------+--------+
3.删除数据
格式:delete from 表名 [where 条件]
3.1 删除stu表中pid值为1的数据
mysql>delete from phone_table where pid=1;
1 mysql> delete from phone_table where pid=1; 2 Query OK, 1 row affected (0.15 sec) 3 4 mysql> select * from phone_table; 5 +-----+--------+--------+ 6 | pid | pname | color | 7 +-----+--------+--------+ 8 | 2 | 小米 | 红色 | 9 | 3 | 华为 | 黑色 | 10 | 4 | 小米 | 红色 | 11 | 5 | 三星 | 白色 | 12 | 6 | 苹果 | 金色 | 13 +-----+--------+--------+ 14 5 rows in set (0.00 sec)