1、测试表结果
create table student(
sno varchar(20) primary key,
sname varchar(20),
sex enum('男','女'),
age int,
sdept varchar(20)
);
2、增
2.1、单条插入
insert into student(sno,sname,sex,age,sdept) values('95001','测试1','男',18,'计算机系');
-- 或者 下面字段必须要表格的结构字段排列一致
insert into student values('95002','测试2','男',19,'计算机系');
2.2、多条插入
insert into student(sno,sname,sex,age,sdept) values('95003','测试3','男',28,'计算机系'),('95004','测试4','女',29,'计算机系');
2.3、复制表数据
-- 复制表结构
create table student_copy like student;
-- 查询复制数据
insert into student_copy select * from student;
2.4、使用replace插入数据
-- repalce介绍:使用repalce时,首先尝试插入到数据表中,若检测表中已经有记录(通过主键或唯一约束判断),则先删除此记录,然后再插入新的数据
-- 修改前的数据:
mysql> select * from student;
+-------+---------+------+------+--------------+
| sno | sname | sex | age | sdept |
+-------+---------+------+------+--------------+
| 95001 | 测试1 | 男 | 18 | 计算机系 |
| 95002 | 测试2 | 男 | 19 | 计算机系 |
| 95003 | 测试3 | 男 | 28 | 计算机系 |
| 95004 | 测试4 | 女 | 29 | 计算机系 |
+-------+---------+------+------+--------------+
replace into student(sno,sname,sex,sdept) values('95003','测试3','男','计算机系');
-- 修改后的数据:
mysql> select * from student;
+-------+---------+------+------+--------------+
| sno | sname | sex | age | sdept |
+-------+---------+------+------+--------------+
| 95001 | 测试1 | 男 | 18 | 计算机系 |
| 95002 | 测试2 | 男 | 19 | 计算机系 |
| 95003 | 测试3 | 男 | NULL | 计算机系 |
| 95004 | 测试4 | 女 | 29 | 计算机系 |
+-------+---------+------+------+--------------+
3、改
3.1、修改单列
update student set ssex='男' where sno='95001';
3.2、修改多列
update student set ssex='女',age=25 where sno='95001';
3.3、concat函数的使用
-- 主要作用是链接字符串,这里sdept开头,增加'学院-'
update student set sdept=concat('学院-',sdept) where sno='95001';
4、删
4.1、删除数据
delete from score where sno='95001';
4.2、删除整张表【注意:谨慎操作】
delete from score;
-- truncate 会删除自增长的记录,置为0,重新开始
truncate score;