数据操作
–增删改查(curd)
±---------±---------------------------±-----±----±--------±---------------+
| Field | Type | Null | Key | Default | Extra |
±---------±---------------------------±-----±----±--------±---------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | NULL | |
| age | int(10) unsigned | NO | | NULL | |
| gender | enum(‘男’,‘女’,‘保密’) | YES | | 保密 | |
| birthday | date | YES | | NULL | |
±---------±---------------------------±-----±----±--------±---------------+
--增加(insert into)
--全列插入
--insert [into] 表名 values(...);
--主键字段 可以用0 null default 来占位
--向classes表中插入一个班级
insert into classes values(0, "菜鸟班");
--向students表中插入一个学生信息
insert into students values(0, "小李飞刀", 20, "女", "1990-01-01");
insert into students values(null, "小李飞刀", 20, "女", "1990-01-01");
insert into students values(default, "小李飞刀", 20, "女", "1990-01-01");
--失败
insert into students values(null, "小李飞刀", 20, "disi", "1990-01-01");
--枚举中的下表 从1开始
insert into students values(0, "小李飞刀", 20, 1, "1990-01-01"); --男
insert into students values(0, "小李飞刀", 20, 2, "1990-01-01"); --女
insert into students values(0, "小李飞刀", 20, 3, "1990-01-01"); --保密
--部分插入
--insert into 表名(列1,...) values(值1,...)
insert into students (name, age, gender) values ("小乔", 19, 2);
--多行插入
insert into students (name, age, gender) values ("貂蝉", 19, 2), ("大乔",19,2);
--修改(update)
--update 表名 set 列1=值1, 列2=值2... where 条件;
update students set gender=1; --全部修改
update students set gender=1 where name="小李飞刀"; --只要name=“小李飞刀”就修改gender
update students set gender=1 where id=4; --只要id是4的 就进行修改;
update students set age=22, gender=1 where id=3;
--删除
--物理删除
--delete from 表名 where 条件
--逻辑删除
--用一个字段来表示 这条信息是否已经不能再使用了
--给students表添加一个is_delete字段 bit 类型
--alter table students add is_delete bit default 0;
--update students set is_delete=1 where id=6;
alter table students add is_delete bit default 0;
select * from students;
+----+--------------+-----+--------+------------+-----------+
| id | name | age | gender | birthday | is_delete |
+----+--------------+-----+--------+------------+-----------+
| 1 | laowang | 18 | 男 | NULL | |
| 2 | laoli | 19 | 保密 | 2010-01-01 | |
| 3 | 小李飞刀 | 20 | 女 | 1990-01-01 | |
| 4 | 小李飞刀 | 20 | 女 | 1990-01-01 | |
| 5 | 小乔 | 19 | 女 | NULL | |
| 6 | daqiao | 19 | 女 | NULL | |
| 7 | diaochan | 19 | 女 | NULL | |
+----+--------------+-----+--------+------------+-----------+
update students set is_delete=1 where id=5;
select * from students;
+----+--------------+-----+--------+------------+-----------+
| id | name | age | gender | birthday | is_delete |
+----+--------------+-----+--------+------------+-----------+
| 1 | laowang | 18 | 男 | NULL | |
| 2 | laoli | 19 | 保密 | 2010-01-01 | |
| 3 | 小李飞刀 | 20 | 女 | 1990-01-01 | |
| 4 | 小李飞刀 | 20 | 女 | 1990-01-01 | |
| 5 | 小乔 | 19 | 女 | NULL | |
| 6 | daqiao | 19 | 女 | NULL | |
| 7 | diaochan | 19 | 女 | NULL | |
+----+--------------+-----+--------+------------+-----------+
--查询基本使用
--查询所有列
--select * from 表名;
select * from students;
--指定条件查询
select * from students where name="小李飞刀";
select * from students where id>3;
+----+--------------+-----+--------+------------+
| id | name | age | gender | birthday |
+----+--------------+-----+--------+------------+
| 4 | 小李飞刀 | 20 | 女 | 1990-01-01 |
| 5 | 小乔 | 19 | 女 | NULL |
| 6 | daqiao | 19 | 女 | NULL |
| 7 | diaochan | 19 | 女 | NULL |
+----+--------------+-----+--------+------------+
--select 列1,列2,... from 表名;
select name,gender from students;
+--------------+--------+
| name | gender |
+--------------+--------+
| laowang | 男 |
| laoli | 保密 |
| 小李飞刀 | 女 |
| 小李飞刀 | 女 |
| 小乔 | 女 |
| daqiao | 女 |
| diaochan | 女 |
+--------------+--------+
--字段的顺序
--可以使用as为列或表指定别名
--select 字段[as 别名], 字段[as 别名] from 数据表 where ....;
select name as 姓名,gender as 性别 from students;
+--------------+--------+
| 姓名 | 性别 |
+--------------+--------+
| laowang | 男 |
| laoli | 保密 |
| 小李飞刀 | 女 |
| 小李飞刀 | 女 |
| 小乔 | 女 |
| daqiao | 女 |
| diaochan | 女 |
+--------------+--------+
select gender as 性别,name as 姓名 from students;
+--------+--------------+
| 性别 | 姓名 |
+--------+--------------+
| 男 | laowang |
| 保密 | laoli |
| 女 | 小李飞刀 |
| 女 | 小李飞刀 |
| 女 | 小乔 |
| 女 | daqiao |
| 女 | diaochan |
+--------+--------------+
来源:CSDN
作者:weixin_44144300
链接:https://blog.csdn.net/weixin_44144300/article/details/104215484