首先,先介绍一个从数据表中查询数据的一个语法 为了检验每一次的操作是否成功,我多次使用了 – 指定所有字段名 语法格式 需要注意的是,在这个格式中,字段1、字段2等等都是数据库中的字段名 称,值1、值2等等是对应字段需要添加的数据,每个值的顺序、类型 示例 查看一下 成功插入了 语法格式 使用这种格式,值1、值2等等表示每个字段需要添加的数据,每个值的顺序和类型都必须和表中字段的顺序和类型都对应。 查看一下,同样,插入成功了 在使用的时候,大多数情况不需要全部字段添加数据,在表中可能只需要添加某几个字段的数据,其他字段使用默认值 字段1、字段2等等表示数据表中的字段名称,也是你要插入数据的字段名称,值1、值2等等表示每个字段需要添加的数据,每个值的顺序和类型必须和字段名对应 查看一下,在下表,可以看到,我在字段“name”“age”插入的数据成功输出了,没有插入的字段“id”输出了默认值 查看一下 可以看到成功了,另外呢,在语法中字段名是可以省略的 示例 查看一下,依然成功了, 插入数据后,可能会遇到需要更改的情况,就需要更新数据表中的数据。 语法格式 写的有点复杂了,咱来一句一句的来看 在update语句中,不使用where条件语句,会把表中指定字段的所有数据全部更新。 这个格式呢,可以修改一个指定字段名的所有数据,或者修改多个指定字段名的所有数据。 修改一个指定字段名的所有数据, 示例 修改多个指定字段名的所有数据 示例 可以看到,修改成功了 ps:因为用来展示的字段数量不够,所以这个示例我先添加了一个‘sex’的字段 使用where子句指定更新数据的条件 示例,在name=‘xiaohong’ 的条件下成功更新age=20,如下图 当然都可以修改表中多个字符段的数据,比如说,我想让id=114的age字符段数据改为21,sex字符段数据改为nv,如下图 我们还可以通过一些简单的运算对数据进行修改 所有人age加1 再来看 ‘xiaohong’的年龄成功减1 1.删除全部数据 语法结构 示例 以上结果说明删除成功 以上结果说明,stu表中已经没有数据 2.删除部分数据 使用where子句指定删除数据的条件 语法结构 可以看到,‘xiaolan’已经被排异了(战术伤心) 示例 可以看到,stu表的全部数据被成功删除
表中数据的基本操作
select 语句的 select * from 表名;
用来查询表中所有数据。
“ *
”是MySQL提供的通配符,可以代替所有的字段名。select * from 表名;
1、插入数据
(1)为所有列插入数据
insert into 表名 (字段1,字段2,...) values (值1,值2,...);
必须
与字段名对应。于是说,insert语句字段的顺序可以和数据库中表字段的顺序不一致,但是values中的值一定要与insert语句中字段的顺序对应。mysql> insert into stu(id,name,age)values(101,'baixiaobai',10); Query OK, 1 row affected (0.01 sec)
mysql> select * from stu; +------+------------+------+ | id | name | age | +------+------------+------+ | 101 | baixiaobai | 10 | +------+------------+------+ 1 row in set (0.00 sec)
insert into 表名 values (值1,值2,...);
示例mysql> insert into stu values (102,'lilei',18); Query OK, 1 row affected (0.00 sec)
mysql> select * from stu; +------+-------+------+ | id | name | age | +------+-------+------+ | 102 | lilei | 18 | +------+-------+------+ 1 row in set (0.00 sec)
(2)为指定列插入数据
insert into 表名 (字段名1,字段名2,...) values (值1,值2,...)
mysql> insert into stu (name,age) values ('hanmeimei',19); Query OK, 1 row affected (0.00 sec)
mysql> select * from stu; +------+-----------+------+ | id | name | age | +------+-----------+------+ | 102 | lilei | 18 | | NULL | hanmeimei | 19 | +------+-----------+------+ 2 rows in set (0.00 sec)
(3)批量插入数据
insert into stu (字段名1,字段名2,...) values (值1,值2,...),(值1,值2,...);
mysql> insert into stu(id,name,age) values (103,'lihua',19),(104,'xiaohong',18); Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from stu; +------+-----------+------+ | id | name | age | +------+-----------+------+ | 102 | lilei | 18 | | NULL | hanmeimei | 19 | | 103 | lihua | 19 | | 104 | xiaohong | 18 | +------+-----------+------+ 4 rows in set (0.00 sec)
insert into stu values (值1,值2,...),(值1,值2,...);
mysql> insert into stu values (113,'liming',19),(114,'xiaolan',18); Query OK, 2 rows affected (0.01 sec) Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from stu; +------+-----------+------+ | id | name | age | +------+-----------+------+ | 102 | lilei | 18 | | NULL | hanmeimei | 19 | | 103 | lihua | 19 | | 104 | xiaohong | 18 | | 113 | liming | 19 | | 114 | xiaolan | 18 | +------+-----------+------+ 6 rows in set (0.00 sec)
insert into stu (字段名1,字段名2) values (值1,值2),(值1,值2);
2、更新(修改)数据
我们使用update语句来实现update 表名 set 字段名1=值1 [,字段名2=值2,...] [where 条件表达式];
(1)更新全部数据
update 表名 set 字段名1=值1 [,字段名2=值2,...]
update 表名 set 字段名1=值1;
mysql> update stu set age=20; Query OK, 6 rows affected (0.00 sec) Rows matched: 6 Changed: 6 Warnings: 0 mysql> select * from stu; +------+-----------+------+ | id | name | age | +------+-----------+------+ | 102 | lilei | 20 | | NULL | hanmeimei | 20 | | 103 | lihua | 20 | | 104 | xiaohong | 20 | | 113 | liming | 20 | | 114 | xiaolan | 20 | +------+-----------+------+ 6 rows in set (0.00 sec)
update 表名 set 字段名1=值1,字段名2=值2;
mysql> update stu set age=19,sex='nan'; Query OK, 6 rows affected (0.00 sec) Rows matched: 6 Changed: 6 Warnings: 0 mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 19 | nan | | NULL | hanmeimei | 19 | nan | | 103 | lihua | 19 | nan | | 104 | xiaohong | 19 | nan | | 113 | liming | 19 | nan | | 114 | xiaolan | 19 | nan | +------+-----------+------+------+ 6 rows in set (0.00 sec)
mysql> alter table stu add sex varchar(10); Query OK, 0 rows affected (0.03 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 20 | NULL | | NULL | hanmeimei | 20 | NULL | | 103 | lihua | 20 | NULL | | 104 | xiaohong | 20 | NULL | | 113 | liming | 20 | NULL | | 114 | xiaolan | 20 | NULL | +------+-----------+------+------+ 6 rows in set (0.00 sec)
(2)更新部分数据
update 表名 set 字段名1=值1 where 条件表达式;
mysql> update stu set age=20 where name='xiaohong'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 19 | nan | | NULL | hanmeimei | 19 | nan | | 103 | lihua | 19 | nan | | 104 | xiaohong | 20 | nan | | 113 | liming | 19 | nan | | 114 | xiaolan | 19 | nan | +------+-----------+------+------+ 6 rows in set (0.00 sec)
mysql> update stu set age=21,sex='nv' where id=114; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 19 | nan | | NULL | hanmeimei | 19 | nan | | 103 | lihua | 19 | nan | | 104 | xiaohong | 20 | nan | | 113 | liming | 19 | nan | | 114 | xiaolan | 21 | nv | +------+-----------+------+------+ 6 rows in set (0.00 sec)
(3)使用简单的运算对数据进行修改
比如我们可以把所有人的年龄加1mysql> update stu set age=age+1; Query OK, 6 rows affected (0.00 sec) Rows matched: 6 Changed: 6 Warnings: 0 mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 20 | nan | | NULL | hanmeimei | 20 | nan | | 103 | lihua | 20 | nan | | 104 | xiaohong | 21 | nan | | 113 | liming | 20 | nan | | 114 | xiaolan | 22 | nv | +------+-----------+------+------+ 6 rows in set (0.00 sec)
我突然发现xiaohong还没有过生日,他的年龄仍然是20岁
我就可以通过where子句指定条件,把xiaohong的年龄减去1mysql> update stu set age=age-1 where name='xiaohong'; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0
mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 20 | nan | | NULL | hanmeimei | 20 | nan | | 103 | lihua | 20 | nan | | 104 | xiaohong | 20 | nan | | 113 | liming | 20 | nan | | 114 | xiaolan | 22 | nv | +------+-----------+------+------+ 6 rows in set (0.00 sec)
3、删除数据
(1)使用delete删除数据
delete from 表名 [where 条件表达式];
delete from 表名;
mysql> delete from stu; Query OK, 5 rows affected (0.00 sec)
mysql> select * from stu; Empty set (0.00 sec)
mysql> delete from stu where name='xiaolan'; Query OK, 1 row affected (0.00 sec)
mysql> select * from stu; +------+-----------+------+------+ | id | name | age | sex | +------+-----------+------+------+ | 102 | lilei | 20 | nan | | NULL | hanmeimei | 20 | nan | | 103 | lihua | 20 | nan | | 104 | xiaohong | 20 | nan | | 113 | liming | 20 | nan | +------+-----------+------+------+ 5 rows in set (0.00 sec)
(2)使用truncate删除数据
truncate table 表名;
mysql> truncate table stu; Query OK, 0 rows affected (0.05 sec)
mysql> select * from stu; Empty set (0.00 sec)
(3)delete语句和truncate语句的区别
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算