MySQL学习4:数据的增删改查CRUD
原创
©著作权归作者所有:来自51CTO博客作者zstar_的原创作品,请联系作者获取转载授权,否则将追究法律责任
数据的增加Create
全列插入
insert into 表名 values(...);
例如:
insert into classes values(0,"一班");
注:主键字段可用 0 null default 来占位
部分插入
insert into 表名(列1,...) values(值1,...)
例如:
insert into students (name, gender) values ("zstar1", 1);
多行插入
多行之间用逗号分隔
例如:
insert into students (name, gender) values ("zstar1", 1),("zstar2",2);
数据的删除Delete
物理删除(真正意义上的删除,慎用)
例如:
删除姓名为zstar的学生
delete from students where name="zstar";
若无条件,则全部删除。
逻辑删除(虚假的删除,常用)
实质上修改,添加一个新的字段来标记是否删除。
例如:给students表添加一个is_delete字段 bit 类型来标记是否删除
alter table students add is_delete bit default 0;
update students set is_delete=1 where id=1;
注:bit类型只能表示0和1,且无法正常以8个字节显示出来。
数据的修改Update
update 表名 set 列1=值1,列2=值2... where 条件;
例如:
将id为3的记录的gender字段值改为1;
update students set gender=1 where id=3;
数据的查询Retrive
查询所有列
定条件查询
例如:
查询id为3的记录
select * from students where id=3;
查询指定列
select 列1,列2,... from 表名;
例如:
查询所有学生姓名和性别。
select name,gender from students;
用as指定别名
select 字段[as 别名], from 数据表 where ...;
例如:
select name as 姓名,gender as 性别 from students;
这样查询出来的结果name列标题会变成姓名,gender列标题会变成性别。
同样,as也可以给表起别名,例如:
select s.name, s.age from students as s;
去除重复记录值