- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实训 sql 关系数据库实训练习含答案,DML语句及DDL语句
DML语句及DDL语句
【实训目的】
掌握INSERT、UPDATE、DELETE三个数据操作语句;掌握数据库对象的定义(CREATE)、修改(ALTER)及删除(DELETE)操作。
【实训内容】
1、数据操纵语句
用INSERT、UPDATE、DELETE三个语句来完成对数据进行添加、更新及删除操作,这三个语句能修改数据库中的数据,但不返回结果集。
2、创建和修改表结构
SQL的DDL语句能创建和修改数据库的逻辑结构,包括CREATE语句、ALTER语句及DROP语句。
3、创建和修改视图
在SQL中,视图是一种类表对象。或称之为衍生表(虚拟表),它并不在物理上包含数据,但是它的定义是永久性的。用CREAE VIEW定义视图。
4、请完成以下数据操纵语句:
学号为“1031231”的学生,新选修了3号课程,成绩未知。
insert into 选课表 values(1031231,3,NULL)
为GZ02计6班未选4号课程的学生补选4号课程。
insert into 选课表(学号,课程号)
select 学号,4 from 学生表 where 班级=GZ02计6 and 学号 not in (select 学号 from 选课表 where 课程号=4)
将名字为王玲俐的学生的年龄修改为18岁,班级改为GZ02计8。
update 学生表 set 年龄=18,班级=GZ02计8 where 姓名=王玲俐
将“软件工程”这门课成绩在60分以下的学生的成绩统一修改为59分。
update 选课表 set 成绩=59
from 选课表,课程表 where 选课表.课程号=课程表.课程号 and 课程名=软件工程 and 成绩60
update 选课表 set 成绩=59
where 成绩60 and 课程号=(
select 课程号 from 课程表 where 课程名=’软件工程’)
删除课程号为1号的所有的选课信息。
delete from 选课表 where 课程号=1
因为特殊原因,涂老师不能上GZ02财2班的课,请帮他删除相应记录。
delete from 选课表
from 学生表,选课表,课程表 where 学生表.学号=选课表.学号 and 选课表.课程号=课程表.课程号 and 课程表.教师 like ‘涂%’ and 学生表.班级=GZ02财2
delete from 选课表
where 学号 in(
select 学号 from 学生表 where 班级=’ GZ02财2’) and
课程号 in(
select 课程号 from 课程表 where 教师 like ‘涂%’)
5、综合使用DDL及DML
在数据库YY中存在两张表:名字分别为病人表、病历表,定义如下:
病人表
字段名 字段类型 ID Int 姓名 Varchar(20) 出生日期 smalldatetime 性别 Char(1) 注:其中ID为主键。
病历表
字段名 字段类型 ID Integer 病人ID Integer 看病时间 smalldatetime 主治医生 Varchar(20) 看病情况 Varchar(400) 备注 Varchar(100) 注:其中ID为主键,病人ID为外键引用病人表的ID字段。
请完成以下操作:
创建以上的两张表(病人表,病历表)。
create table 病人表(
ID int,
姓名 varchar(20),
出生日期 smalldatetime,
性别 char(1)
)
create table 病历表(
ID integer,
病人ID integer,
看病时间 smalldatetime,
主治医生 varchar(20),
看病情况 varchar(400),
备注 varchar(100)
)
创建2003年7月到2004年7月的所有病历的视图。
create view b1
as
(select * from 病历表
where 看病时间 between 2004-07-01 and 2004-07-31)
创建主治医生为“刘平”的所有病人的视图。
create view b2
as
(select 病人表.* from 病人表,病历表
where 病人表.ID=病历表.病人ID and 主治医生=刘平)
检索出出生日期在1978年1月到1982年12月的病人信息。
select 病人表.* from 病人表
where 出生日期 between 1998-1-1 and 1982-12-30
检索出所有的男病人,并按照病人ID的大小从大到小排列。
select * from 病人表
where 性
您可能关注的文档
最近下载
- 国家安全论文2000字范文(精选5篇).docx VIP
- 用电检查员技能培训课件—三相四线计量装置错接线分析及操作.pptx
- 第24课 人民解放战争(课件)-【中职专用】《中国历史》.pptx
- 讲好红色故事传承红色精神红色革命故事学习PPT.pptx VIP
- 心理健康指导师考试题库及答案.doc VIP
- 电子基础培训介绍.pptx VIP
- 离心式压缩机培训PPT.pptx VIP
- 犯罪心理学大学校园故意杀人罪的分析以云南大学学生马加爵杀人案为例.pdf
- SLT 631.1-2025 水利水电工程单元工程施工质量验收标准 第1部分:土石方工程.docx
- 高考历史判断题练习及答案.docx VIP
文档评论(0)