Files
inmind_web_project260912-1/mysql-day02-DML.sql
T
2026-10-11 14:59:26 +08:00

85 lines
3.2 KiB
SQL

-- auto-generated definition
create table tb_emp
(
id int unsigned auto_increment comment 'ID'
primary key,
username varchar(20) not null comment '用户名',
password varchar(32) default '123456' null comment '密码',
name varchar(10) not null comment '姓名',
gender tinyint unsigned not null comment '性别, 说明: 1 男, 2 女',
image varchar(300) null comment '图像',
job tinyint unsigned null comment '职位, 说明: 1 班主任,2 讲师, 3 学工主管, 4 教研主管',
entrydate date null comment '入职时间',
dept_id int unsigned null comment '部门ID',
create_time datetime not null comment '创建时间',
update_time datetime not null comment '修改时间',
constraint username
unique (username)
)
comment '员工表';
-- ========================================基本查询==========================================
-- DML:数据操作语言
-- DML : 插入数据 - insert
-- 1. 为 tb_emp 表的 username, name, gender 字段插入值
insert into tb_emp (username,name,gender,create_time,update_time)
values('wuji','张无忌1',1,now(),now());
-- 2. 为 tb_emp 表的 所有字段插入值
insert into tb_emp values
(null,'zs','123','张三',1
,'1.png',1,'2015-01-01',1,now(),now());
insert into tb_emp
(id, username, password, name, gender, image, job, entrydate, dept_id, create_time, update_time)
values
(null,'zs1','1234','张三1',1
,'1.png',1,'2015-01-01',1,now(),now());
-- 3. 批量为 为 tb_emp 表的 username , name , gender 字段插入数据
insert into tb_emp
(username,name,gender,create_time,update_time)
values
('wuji2','张无忌2',1,now(),now()),
('wuji3','张无忌3',1,now(),now()),
('wuji4','张无忌4',1,now(),now())
;
-- DML : 更新数据 - update
-- 1. 将 tb_emp 表的ID为1员工 姓名name字段更新为 '张四'
update tb_emp set name = '张四' where id = 1;
update tb_emp set name = '张四' ;
-- 2. 将 tb_emp 表的所有员工的入职日期更新为 '2010-01-01'
update tb_emp set entrydate='2010-01-01',update_time=now();
-- DML : 删除数据 - delete
-- 1. 删除 tb_emp 表中 ID为1的员工
delete from tb_emp where id = 1;
-- 2. 删除 tb_emp 表中的所有员工
delete from tb_emp;
-- ======================================DQL===================================
-- 基本查询
-- 1. 查询指定字段 name,entrydate 并返回
select name,entrydate from tb_emp;
-- 2. 查询返回所有字段
-- 方式一: 推荐 , 效率高 . 更直观
select id, username, password, name, gender,
image, job, entrydate, dept_id,
create_time, update_time from tb_emp;
-- 方式二:不推荐(不直观,性能低)
select * from tb_emp;
-- 3. 查询所有员工的 name,entrydate, 并起别名(姓名、入职日期) --- as 关键字可以省略
select name as '姓名',entrydate as '入职日期' from tb_emp;
select name '姓名',entrydate '入职日期' from tb_emp;
-- 4. 查询员工有哪几种职位(不要重复) -- distinct
select distinct job from tb_emp;