mysql之数据操作
第一章 添加数据
通常向表中添加数据应该包含表中的所有字段,即为表中所有字段添加数据。但也可不包含所有字段来添加数据
1.1、所有字段
按照所有字段来添加数据,有两种方式:
语法1:- insert into 表名(所有字段) values(字段对应的值);
复制代码 语法2:- insert into 表名 values(值);
复制代码 由于语法2 没有指定字段名,所以添加的值顺序需要与表中字段顺序一致。
案例实操:现在有一张表 book ,表中有 bid:书编号,bname:书名,author:作者,现需要往表中插入这些数据:
表:- create table book(
- bid int primary key auto_increment,
- bname varchar(10) not null,
- author varchar(10) not null);
复制代码 1,我在北京送快递,胡安焉
2,白鸟与蝙蝠,东野圭吾
3,大医·日出篇,马伯庸
4,平原上的摩西,双雪涛
语法1 插入 1,2;语法2 插入 3,4
语法1:- insert into book(bid,bname,author) values(1,'我在北京送快递','胡安焉');
- insert into book(bid,bname,author) values(2,'白鸟与蝙蝠','东野圭吾');
复制代码 语法2:- insert into book values(3,'大医·日出篇','马伯庸');
- insert into book values(4,'平原上的摩西','双雪涛');
复制代码 通过查询语句结果如下:
查询语句:
在语法1 情况下,表中字段顺序可以无序,但要求是 字段与所添加的值 要对应。
1.2、指定字段
语法:- insert into 表名(字段1,字段2,字段3,字段4.........) values(值1,值2,值3,值4.......);
复制代码 案例操作:在上述案例操作中,我们向表中添加了 4 条数据,现向表中添加:故事只讲了一半,万玛才旦- insert into 表名(bname,author) values('故事只讲了一半','万玛才旦');
复制代码
注意:当表中字段约束为:not null 时,插入数据如果省略,则会报错。
当我们某些列设置了自增约束:auto_increment 时,可以通过下述命令添加数据:- insert into 表名 values(null,值,值......);
复制代码 例如 book 表中,bid 设置了自增约束,则可以这样:- insert into book values(null,'故事只讲了一半','万玛才旦');
复制代码 1.3、同时添加多条记录
当我们需求很多时,有多少数据,则会写多少次 插入语句,比较麻烦。而 mysql 中提供了这样的语法,可以同时插入多条数据:- insert into 表名[(字段.....)] values
- (值1,值2,值3,.....),
- (值1,值2,值3,.....),
- (值1,值2,值3,.....),
- ..................
- (值1,值2,值3,.....);
复制代码 最后的使用分号表示结束。[]:中的表示可选项
案例实操:向 book 表中同时插入多条数据:- insert into book values
- (null,'*时代','傅高义'),
- (null,'论持久战','毛东'),
- (null,'中国历代政治得失','钱穆');
复制代码
对于不添加数据的字段,如果约束不为 not null,则会赋值为 null
第二章 修改数据
更改数据是对表中存在的记录进行修改,当数据需要改变时,就需要进行修改了。
语法:- update 表名 set 字段=值[,字段1=值1.....] [where 条件表达式]
复制代码 []:可选项
2.1、更改指定数据
例如需要对 bid 为 1 的数据进行修改:- update book set bname='小镇喧嚣',author='吴毅' where bid=1;
复制代码
2.2、更改部分数据
例如将 bid 小于 4 的 author 修改为 '作家'- update book set author='作家' where bid < 4;
复制代码
2.3、更改全部数据
例如将表中的数据的 author 设置为 '未知'- update book set author='未知';
复制代码
第三章 删除数据
语法:- delete from 表名 [where 条件表达式];
复制代码 []:可选项,当满足条件表达式,则删除,否则不删。
3.1、删除指定数据
通过条件表达式完成。
语法:- delete from 表名 where 字段 = 值;
复制代码 当表中字段 = 值 时,where 成立,则删除。
例如删除 book 表中的 bid=1的数据- delete from book where bid=1;
复制代码
3.2、删除部分数据
通过条件表达式完成。
语法:- delete from 表名 where 条件表达式;
复制代码 例如删除 book 表中前 4 个数据
[code]delete from book where bid |