数据库的指令:增、改、删、查(最复杂)
1、增insert(标准):
insert into A02专业表(专业ID,院系ID, 专业名称, 国家专业编码,
专业简称, 学制, 培养层次, 年级)
values(143,5,‘工业艺术’,‘050111’,‘工艺’,4,‘本科’,2017)
insert into A03班级表( 专业ID, 学号前缀, 班级名称)
values(11,‘090340204’,‘电气09-4’)
小结:(1)主键,设定为“标识符”,则不能显示为主键插入值;
(2)列的数据类型是“数字型”,不可以加任何引号
(3)插入的值,所有的指令符号都是英文状态
(4)插入的值的个数和数据类型必须和表结构定义的列的个数和数据类型保持一致。
(5)新增的外键的值,必须在主键表中存在。比如:在“A03班级表”中,新增的“专业ID”的值,必须在“A02专业表”中存在这个=值
(6)一条新增指令只能操作一个表。
2、修改(更新)update
update A02专业表
set 专业名称=‘视觉艺术’,国家专业编码=‘060111’,专业简称=‘视觉’,学制=5
where 专业ID=143
update A02专业表
set 专业名称=‘视觉艺术1’,国家专业编码=‘060111A’,专业简称=‘视觉’,学制=5
where 专业名称=‘视觉艺术’ AND 国家专业编码=‘060111’
小结:(1)一条新增指令只能操作一个表
(2)一定要注意是否启用where;建议启用 “键值ID”精确定位数据。
3、删除Delete
delete from A02专业表
where 专业ID=143
小结:(1)一条新增指令只能操作一个表
(2)一定要注意是否启用where;建议启用 “键值ID”精确定位数据。
4、查询select
1、最简单的单表查询
(1)查询所有列 (SELECT *)
SELECT 学生ID, 班级ID, 学号, 姓名
FROM A04学生表
(2)查询部分列
SELECT 学号, 姓名
FROM A04学生表
2、多表查询
(1)两个表查询
SELECT A01学院表.院系名称, A02专业表.专业名称,
A02专业表.国家专业编码, A02专业表.学制, A02专业表.培养层次,
A02专业表.年级
FROM A01学院表 INNER JOIN
A02专业表 ON A01学院表.院系ID = A02专业表.院系ID
(2)三个表连接
SELECT A01学院表.院系名称, A02专业表.专业名称, A02专业表.国家专业编码,
A02专业表.学制, A02专业表.培养层次,
A02专业表.年级, A03班级表.班级名称
FROM A01学院表 INNER JOIN
A02专业表 ON A01学院表.院系ID = A02专业表.院系ID INNER JOIN
A03班级表 ON A02专业表.专业ID = A03班级表.专业ID
(3)条件查询
(1)where and 多表
SELECT A01学院表.院系名称, A02专业表.专业名称,
A02专业表.国家专业编码, A02专业表.学制, A02专业表.培养层次,
A02专业表.年级, A03班级表.班级名称, A04学生表.学号, A04学生表.姓名
FROM A01学院表 INNER JOIN
A02专业表 ON A01学院表.院系ID = A02专业表.院系ID INNER JOIN
A03班级表 ON A02专业表.专业ID = A03班级表.专业ID INNER JOIN
A04学生表 ON A03班级表.班级ID = A04学生表.班级ID
where A01学院表.院系ID=3 and A02专业表.年级=2007
and A03班级表.班级名称=‘英语07-2’
(2)where and or () 多表
SELECT A01学院表.院系名称, A02专业表.专业名称,
A02专业表.国家专业编码, A02专业表.学制, A02专业表.培养层次,
A02专业表.年级, A03班级表.班级名称, A04学生表.学号, A04学生表.姓名
FROM A01学院表 INNER JOIN
A02专业表 ON A01学院表.院系ID = A02专业表.院系ID INNER JOIN
A03班级表 ON A02专业表.专业ID = A03班级表.专业ID INNER JOIN
A04学生表 ON A03班级表.班级ID = A04学生表.班级ID
where A01学院表.院系ID=3 and (A02专业表.年级=2007 or A02专业表.年级=2006 )
(2)like % % 模糊查询,多表
SELECT ltrim(rtrim(A01学院表.院系名称)), A02专业表.专业名称,
A02专业表.国家专业编码, A02专业表.学制, A02专业表.培养层次,
A02专业表.年级, A03班级表.班级名称, A04学生表.学号, A04学生表.姓名
FROM A01学院表 INNER JOIN
A02专业表 ON A01学院表.院系ID = A02专业表.院系ID INNER JOIN
A03班级表 ON A02专业表.专业ID = A03班级表.专业ID INNER JOIN
A04学生表 ON A03班级表.班级ID = A04学生表.班级ID
where ltrim(rtrim(A02专业表.专业名称)) like ‘%精细%’
and (A02专业表.年级=2007 or A02专业表.年级=2006 )