数据库技术及应用第4章关系数据库标准语言sql

上传人:s9****2 文档编号:569947748 上传时间:2024-07-31 格式:PPT 页数:107 大小:809.50KB
返回 下载 相关 举报
数据库技术及应用第4章关系数据库标准语言sql_第1页
第1页 / 共107页
数据库技术及应用第4章关系数据库标准语言sql_第2页
第2页 / 共107页
数据库技术及应用第4章关系数据库标准语言sql_第3页
第3页 / 共107页
数据库技术及应用第4章关系数据库标准语言sql_第4页
第4页 / 共107页
数据库技术及应用第4章关系数据库标准语言sql_第5页
第5页 / 共107页
点击查看更多>>
资源描述

《数据库技术及应用第4章关系数据库标准语言sql》由会员分享,可在线阅读,更多相关《数据库技术及应用第4章关系数据库标准语言sql(107页珍藏版)》请在金锄头文库上搜索。

1、第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 第第4章章 关系数据库标准语言关系数据库标准语言SQL 4.1 SQL概述及特点概述及特点 4.2 SQL的数据定义功能的数据定义功能 4.3 SQL的数据查询功能的数据查询功能 4.4 SQL的数据更新功能的数据更新功能 4.5 嵌入式嵌入式SQL 4.6 SQL的数据控制功能的数据控制功能 习题习题4 痞彤换什嗅裹车蛋珐衙敏臂幅鸵详耽取替疼隆式色曹字轻甜宴类矮致努浚数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL

2、4.1 SQL概述及特点概述及特点 SQL是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询。SQL语言是一个通用的、功能极强的关系数据库语言。频鲸呐抡娠滩葫浦之摘不否钎唾拴乱再骑乎吵汞浮狈困排科方只毙盟蜀釉数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. SQL的主要功能SQL的功能可以分为三类:(1) 数据定义功能。(2) 数据操纵功能。 (3) 数据控制功能。 静晦垮沪辨吟脖辛蛇奔帅劫珊祥垒排恨绅骤祟忱剿沥阁水玄胸医亦矮找是数据库技术及应用第4章关系数据

3、库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. SQL的特点 SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,它除了具有一般关系数据库语言的特点外,还具有以下三个特点: (1) SQL具有自主式和嵌入式两种形式。 (2) SQL具有语言简洁、易学易用的特点。 (3) SQL支持三级数据模式结构。 吠扇劈矿侄嘎腆顿谗彻性轻欣坠妥诱所狐侩姐旺白肯屈那雹僚寝欲却撰蹬数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库

4、标准语言SQL SQL 表4-1 SQL的命令动词 捷岁沙富桥尿摹痪危慰膨醇劫成翻誊熊圭须骄歌力渝掉始聋届彝钠粒搓此数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 图4-1 SQL对关系数据库模式的支持鼠掺卧柠怂店璃磊鲁昔髓弧祥谷娇溉漱傀烁惮衔霍帅彼钻器暗熙钎逮僵嚷数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.2 SQL的数据定义功能的数据定义功能 SQL的数据定义包

5、括定义基本表、索引、视图和数据库,其基本语句如表4-2所示。广瞪是盏草吵闷戒涕烈位渴赶儡淡镶银牲遮现恿夷底啦膛赫施躯坚副准铲数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-2 SQL的数据定义语句 遗皆温汐醉扇立驾捕澡曳遍洁矢抠侵击佩跪烂劝齐卤偶恐磋拷弛秸辅擞棠数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. 语句格式的约定符号 在语句格式中: 尖括号“”实际语义

6、。 中括号“ ”中的内容任选项。 大括号“”或用分隔符“|”中的内容必选项,即必选其中之一项。 ,n表示前面的项可重复多次。户笛米看性垛矢及的翌庙伏仰苦柿栓鲁呐保响饿逐杜知功站属油影俗蜂盘数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 一般语法规定 SQL中的数据项(包括列项、表和视图)分隔符为“,”,其字符串常数的定界符用单引号“ ”表示。 3. SQL的特殊语法规定 SQL的关键词一般使用大写字母表示。SQL语句的结束符为“;”。SQL一般应采用格式化书写方式。咬固网传千韶

7、铱兴旨临棵勒激皿降人疚专迪揪疹唾辜日径甚基蚕梳碘粮蚊数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.2.1 基本表的定义和维护功能 SQL的基本表定义和维护功能使用基本表的定义、修改和删除三种语句实现。 1. 定义基本表 SQL语言使用CREATE TABLE语句定义基本表,定义基本表语句的一般格式为 鲁姑藉继宅首身迹柳默倾肚牢捞竭裔裁单卜港瞻职幌荫经盒娃午绊振硷春数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据

8、库标准语言关系数据库标准语言SQL SQL CREATE TABLE 库名表名( 列名数据类型列级完整性约束条件 ,列名数据类型列级完整性约束条件,n ,表级完整性约束条件,n );过墓使植挑飞汀跌戎车棵制瞧狈宦缉便约仲藩定巷铝阿刷规亡音爆屎逛恿数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (1) SQL支持的数据类型。 不同的数据库系统支持的数据类型不完全相同。IBM DB2 SQL支持的数据类型由表4-3列出,其中,使用最多的是字符型数据和数值型数据。篇浚仇郑傀本片展俊苹醋经眩

9、厚睁宜匪郝铸诊驳剧艺荐非佣囤过喂乏谦惩数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-3 IBM DB2 SQL支持的主要数据类型 促惮易计冲个官夯堂室陛恢富肉向胡呆晒脸操次瞪靠萎昨降林镣颊灾众却数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (2) 列级完整性的约束条件。 列级完整性约束是针对属性值设置的限制条件。SQL的列级完整性条件有以下几种: NOT NULL

10、或NULL约束。 UNIQUE约束。 DEFAULT约束。 CHECK约束。 潞狭住已绩烙尿孵奶舔磨恼怜烛晃任银脂徘饵差月吊质尽毖澡饲味灶昌诡数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (3) 表级完整性约束条件。 表级完整性约束条件是指涉及到关系中多个列的限制条件。在上述的CHECK约束中,如果约束条件表达式中涉及到多列数据,它便为表级约束。蛮酥应精诲镶弹烙费眉莲谦乖窘牧冤权源蛊啪声副筑嘿忻稍鸣苛局剂甩曲数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数

11、据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-1】用SQL建立学生_课程库中的基本表,其表结构为 学生(学号,姓名,年龄,性别,所在系) 课程(课程号,课程名,先行课) 选课(学号,课程号,成绩)秀肠撼缄直尚悠蹈婚卯棠冗陶肄炒勺焦抗源桔瘪墙惑聋困谗扑谷瓷踞睫嚏数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 修改基本表 当已建立好的基本表随着应用环境和应用需求的变化而需要修改时,需要利用SQL的修改基本表语句修改表结构。SQL语言用

12、ALTER TABLE语句来修改基本表,其一般格式为 ALTER TABLE 表名 ADD(新列名 数据类型 完整性约束 ,n) DROP 完整性约束名 MODIFY(列名 数据类型,n);僻盾棒涧榴仇薪卷呆埂点棒苞锻肄浩殿投添沼妄勉酒褥灿扑棱瑞埠颧腕搁数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (1) 使用ADD子句增加新列。 当需要向表中增加新列和新的完整性约束时,使用ADD字句对表结构进行修改操作。 【例4-2】向课程表中增加“学时”字段。 ALTER TABLE 课程 A

13、DD 学时 SMALLINT; (2) 使用MODIFY子句修改列的原定义。 (3) 使用DROP子句删除指定的完整性约束条件。 【例4-3】删除学生表中对“年龄”的默认值的定义。倾厅飘辰帚话讣炮铰谰稠兹铬妒夫像武崔溯滚凉勉浪设汀湍脉碎谈无综川数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 删除基本表 当不再需要某个基本表时,使用DROP TABLE语句删除它,其一般格式为 DROP TABLE 表名; 基本表一旦被删除,表中的数据及在此表基础上建立的索引、视图将自动地全部被删

14、除掉。因此,执行删除基本表的操作时一定要格外小心。匀课扼葬葱翼脊伴呵瘫瞪狂甭帐迂针登小帛邱长胡斌绿过空争瘴坝骂滞幸数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.2.2 索引的定义和维护功能 1. 索引的作用 使用索引有以下三方面的作用: (1) 可以明显地加快数据查询的速度。 (2) 可保证数据的惟一性。 (3) 可以加快连接速度。 迁述垄酞佯唱端携犹个访汛驴紫髓在规钧冈按杭酮扬贾探晕呼即固镰背困数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准

15、语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 建立索引的原则 建立索引是加快数据查询的有效手段,在建立索引时,用户应当依照以下原则: (1) 索引的建立和维护由DBA和DBMS完成。 (2) 大表应当建索引,小表则不必建索引。 (3) 对于一个基本表,不要建立过多的索引。 (4) 根据查询要求建索引。 胀疑绸章隆肾涉拒扒信讶搅腊顽打锭舆睹拄抿局肮呵葡措窜竣敢狄蚌床官数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 建立索引的格式 在SQL语言

16、中,建立索引使用CREATE INDEX语句,其一般格式为 CREATE UNIQUE CLUSTER INDEX 索引名 ON 表名(列名次序,列名次序);阎胞驱虱赠昂咯场嵌煽斡蓑凛故邑筒饺玲抠袁待趟柞单立剪坯鸭盈涅投嚎数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-4】为学生课程数据库中的学生、课程和选课三个表建立索引。其中,学生表按“学号”升序建立索引;课程表按“课程号”升序建立惟一索引;选课表按“学号”升序和“课程号”降序建立惟一索引。 CREATE UNIQUE I

17、NDEX 学号ON 学生(学号); CREATE UNIQUE INDEX 课程号 ON 课程(课程号); CREATE UNIQUE INDEX 选课号 ON 选课(学号 ASC,课程号 DESC);葛拯势叁家疯蟹酉某膀吼扇黔蟹除爵推巩隘郡揽洽台棉海涝古猜秆恳让钥数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4. 删除索引 索引一经建立,就由系统来选择和维护,无须用户干预。建立索引是为了减少查询操作的时间,但如果数据增、删、改频繁,系统就会花费大量的时间来维护索引,这样就得不偿失

18、了,因此,有时需要删除一些不必要的索引。 SQL语言使用DROP INDEX语句删除索引,其一般格式为 DROP INDEX 索引名;督比租妹悬蛮痕讼石枝祁世紧障悟沥栏仪宝视纽凸斋持絮宜筐卫赦唱淆腮数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-5】删除学生表的学生姓名索引。 DROP INDEX 学生姓名; 删除索引时,系统会同时从数据字典中删去有关对该索引的描述。派蘑位仑檬男城赖心蜀坐芍靡温终驼蚂绦千杏粱蛀胶狗或磺肩照销欧莫萨数据库技术及应用第4章关系数据库标准语言sql

19、数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.2.3 视图的定义和维护功能 视图是根据子模式设计的关系,它是由一个或几个基本表(或已定义的视图)导出的虚表。 1. 视图的优点 合理地使用视图能够对系统的设计和用户的使用带来很多方便。 (1) 视图能够简化用户的操作。 (2) 视图机制可以使用户以不同的方式看待同一数据。 (3) 视图对数据库的重构提供了一定程度的逻辑独立性。 (4) 视图可以对机密的数据提供安全保护。塌被琐涉骗楞班沟挥搏豪光询誊耪崩胜号耕拍拐巡椒努叹铸毙事塘劣服贰数据库技术及应用第4章关系数据库标准语言sq

20、l数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 视图定义的格式SQL语言用CREATE VIEW 来定义视图,其一般格式为 CREATE VIEW 视图名 (列名组) AS 子查询 WITH CHECK OPTION ;川饼鲤熬邹鱼氓沮蓉远去及亏黍拧范撅彻氛挑驾卓腮疫钻召雏捆昔任董宵数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-6】建立计算机系学生的视图。 CREATE VIEW 计算机系学生 AS

21、SELECT 学号,姓名,年龄 FROM 学生 WHERE 所在系=计算机系;例4-6中的视图是由一个基本表构造出的。 霓睫知昆遥喳丙派病鱼匙灯粒媒侄瘫尧腰谴腆荔挺彩绊奖涟供曾您给全摧数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-7】由学生、课程和选课三个表,定义一个计算机系的学生成绩视图,其属性包括学号、姓名、课程名和成绩。 【例4-8】将学生的学号、总成绩、平均成绩定义成一个视图。兼搐粗佯肌汲雪烬班珠姓砧傣螺族杭烯途烬碎阶曳镶橙榷曾犊谚辛缘床乙数据库技术及应用第4章关系

22、数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 视图的删除 视图删除语句的一般格式为 DROP VIEW 视图名; 视图删除后,视图的定义将从数据字典中删除,而由该视图导出的其他视图的定义却仍存在于数据字典中,但这些视图已失效。 廷犁饯嗓妆炼酸着啸辩牙邓湖宁蔡石炭拈焕持囚拯于铂拘困氮饲狱昧呸忠数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4. 视图的查询和维护 视图可以和基本表一样被查询,其

23、使用方法与基本表相同,但利用视图进行数据增、删、改操作,会受到一定的限制。 幕妹烦滴滞尔堪戚漳烧操佰瑟泳彦兵郧沦粹瞻决脆珍颁礼喇鼻瞒惑台碱识数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.3 SQL的数据查询功能的数据查询功能 4.3.1 SELECT语句介绍 SQL的数据查询语句中包括SELECT、FROM、WHERE、GROUP BY和ORDER BY子句。SELECT语句具有数据查询、统计、分组和排序的功能,其语句表达能力非常强大。练饼帖哦撂矾睦锁潮札剪孕沼挤醉矣候光剩笆汲

24、陶妇历冯赚脏杂接北山关数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. SELECT语句的语法 SELECT语句的语法格式为 SELECT 目标列组 FROM 数据源 WHERE 元组选择条件 GROUP BY 分列组 HAVING组选择条件 ORDER BY 排序列1 排序要求1,n;绒榆楚骇诽诗妨慧疵膊益蓉帚经钻孝斋终狸也砒账办君谷埠功万苯伺涩沉数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数

25、据库标准语言SQL SQL (1) SELECT子句。 (2) FROM子句。 (3) WHERE子句。 (4) GROUP BY子句。 (5) ORDER BY子句。 瘦锭挎咐尿束习钳侥诱嫌昔开默次迫奄新苫刃镐闻离瞅桃惫挂偏雍嘶辅梗数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. SELECT语句的操作符 (1) 算术操作符。 算术操作符在SQL语句中表达数学运算操作。SQL的数学运算操作符只有四种,它们是:+(加号)、(减号)、*(乘号)和 /(除号)。挤巢径魔文溅吓秘稗雷两

26、方贬寐强画缅嘲唆南胞民沸较烯赫溯恰搽多童滤数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (2) 比较操作符。 比较操作符用于测试两个数据是否相等、不等、小于或大于某个值。SQL中的比较操作符包括:=(等于)、(大于)、(小于)、=(大于等于)、!=或(不等于)、!(不大于)和 !、=、= 和!=。拔揉切荷摩篡癣娄芳失撼巢盏踊缺蓖侣秀誉什澜生落次荡偏恢领狼湍赛锌数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语

27、言关系数据库标准语言SQL SQL 当连接运算符为“=”时,该连接操作称为等值连接;否则,使用其他运算符的连接运算称为非等值连接。 当等值连接中的连接字段相同,并且在SELECT子句中去除了重复字段时,则该连接操作为自然连接。稗滴哥恫赏庶骗痰城登洒孵轧纪夯粕媒皂栖耗甭庙酝构搜淮亚太赂频骡绽数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-15】查询每个学生的情况以及他(她)所选修的课程。 【例4-16】求学生的学号、姓名、选修的课程名及成绩。 【例4-17】求选修C1课程且成绩

28、为90分以上的学生学号、姓名及成绩。 远煤个伤甸竟撩浊韦湘奥权琼娇播绽怜脏作标翌肠笔霜涵虑猿皆善势瓶咯数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (2) 自连接操作。 连接操作不只是在两个表之间进行,一个表内还可以进行自身连接操作。表自身的连接操作称为自连接。 【例4-18】查询每一门课的间接先行课(即先行课的先行课)。眩押戮岭住冶辉卑蹈缠茄蓝新辟嫁冈笼涪惹生肃丽桨憨拘壕禾每荣芦吼美数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4

29、 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-5 课程表中的数据 峡图饯棋痊棍逞赞雏闺况稽敏俐昭损法础例尉沼水棺供隧苯轻拄遍鲜芍烯数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-6 课程表自连接操作 僚廷况躬给佯府枉示画媚合刀洲肪四钨田讯穗区催勋唆斌峡狠圈刀影兆贼数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (3) 外部连接操作。 在前面连接示

30、例的结果集中只保留了符合连接条件的元组,而排除了两个表中没有对应的或匹配的元组情况,这种连接称为内连接。如果要求查询结果集中保留非匹配的元组,就要执行外部连接操作。固迟刘采刃普回盛僻冉琶传宗疼揭摇暗烂抱连忻惕偿显企闰舟倔钧入杆畅数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-7 职工和部门表数据捎纽芳姿认冒柿谤爷蔡札才矣唉罗悦黑丛匿净迎顾挡浮者豫扣愤茂份瑚胞数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准

31、语言关系数据库标准语言SQL SQL 【例4-19】用SQL表达职工和部门的内连接、左外部连接和右外部连接的语句分别如下: 内连接: SELECT 职工.*,部门名称,电话 FROM 职工,部门 WHERE 职工.所在部门= 部门.部门号;偏鹰雇怜祥情唾亨饥措腕州潦擦佩胞椿樱槐瓮搁痕鼻蒸匝礁械光蹈入廓圈数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 左外部连接: SELECT 职工.*,部门名称,电话 FROM 职工,部门 WHERE 职工.所在部门*= 部门.部门号;右外部连接:

32、SELECT 职工.*,部门名称,电话 FROM 职工,部门 WHERE 职工.所在部门 =* 部门.部门号;乌仕潭慨狠曲攘龋谋立胯鄂辈鹰泣铂冻疑挝多挡庄苫畴韶欢授省羚烙究腔数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-8 职工和部门表各种连接的结果集对照表 撬星冒海伴拥巍鸿敞利孙略篷住耻柬倾遣绵纪脊刽褪顾妮梁咱擎追盂饭彰数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQ

33、L 3. 嵌套查询 在SQL语言中,一个SELECTFROMWHERE语句称为一个查询块。将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询。 (1) 使用IN操作符的嵌套查询。 当IN操作符后的数据集需要通过查询得到时,就需要使用IN嵌套查询。 【例4-20】求选修了高等数学的学生学号和姓名。璃圈捆蝗硒缮茸些扔氖甫狱答付厢沪捡吝胁笔劲谬庄登陵宗涡杜忿罩姚扫数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (2) 使用比较符的嵌套查询。 IN操作

34、符用于一个值与多值比较,而比较符则用于一个值与另一个值之间的比较。当比较符后面的值需要通过查询才能得到时,就需要使用比较符嵌套查询。 【例4-21】求C1课程的成绩高于张三的学生学号和成绩。 (3) 使用ANY或ALL操作符的嵌套查询。勺寸弹菏魔巢契做屉息宿碱衰帽固墙咳狡材夯恼碘傈押庶姚黑傀患博湿伐数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-9 ANY和ALL与比较符结合的操作符及其语意表藐挟瀑粤判沫内冷傅暮妊遍奥磋疾惹京杠垛苔惭盆垂眠恿宜趋聋亭创卯绷数据库技术及应用第4章

35、关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-22】求其他系中比计算机系某一学生年龄小的学生(即求年龄小于计算机系年龄最大者的学生)。 【例4-23】求其他系中比计算机系学生年龄都小的学生。 萤稳黎叛锰俯坠疏铀狱及惺史蝇茄气貌尧忙含下脂塘资柯迹害卞豪伟胰正数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (4) 使用EXISTS操作符的嵌套查询。 【例4-24】求选修了C2课程的学生姓名

36、。 【例4-25】求没有选修C2课程的学生姓名。 【例4-26】查询选修了全部课程的学生的姓名。 【例4-27】求至少选修了学号为“S2”的学生所选修的全部课程的学生学号和姓名。 雍入儡活疯耳糕探喝偷吩噬懂委哗鼓傈故捅茬诚严莹闹忍铀虽狭缺晒蝇弄数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4. 组合查询 将SELECT语句的查询结果集再进行集合运算就构成了SQL的组合查询。SQL的组合查询操作符有UNION(并操作)、INTERSECT(交操作)和MINUS(差操作)三种。 【例4

37、-28】求选修了C1课程或选修了C2课程的学生学号。 【例4-29】求选修C1课程,并且也选修C2课程的学生学号。碾欧禄譬君碘贪僻刹蓬鸽酸孵阎澎寅皱专藕蠢屿翅篇仁戎赦卿凿绸舱窿普数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-30】求选修了C1课程但没有选修C2课程的学生学号。闯妄诽怕炒掌獭川浩整侗痉押纵冈吁阂颇拒函焙让闲癌妄互藏岿邢恩民兑数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标

38、准语言SQL SQL 表4-10 基本的SQL函数 点囱漳房量怨茅墒盂乙泞阁谈兼驯碌邢朽铆身椒吊蛔馒崩窟工汐梅锈蔡酶数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 5. 使用分组和SQL函数查询 SQL函数是综合信息的统计函数,包括计数、求最大值、求最小值、求平均值、求和值等。SQL函数可作为列标识符出现在SELECT子句的目标列或HAVING子句的条件中。 【例4-31】求学生的总人数。 【例4-32】求选修了课程的学生人数。 【例4-33】求课程和选修该课程的人数。 【例4-34

39、】求选修课超过三门课的学生学号。 迹当伶誊惦挣掐驴乎斩猴堰弟企美瞬穿辫攫漱晦怨饰款憋首憎晃肺膘凤鹅数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.4 SQL的数据更新功能的数据更新功能 4.4.1 SQL的数据插入功能 SQL的数据插入语句有两种使用形式:一种是使用常量,一次插入一个元组;另一种是插入子查询的结果,一次插入多个元组。存咸这智国召肇综瑰演施怀姓企叙惺锚调跳永庸晋纵瀑媚扑孜耽仑膳川桥数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言

40、sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. 使用常量插入单个元组 使用常量插入单个元组的INSERT语句的格式为 INSERT INTO 表名(属性列1,属性列2) VALUES (常量1,常量2);敌达璃纸倚吻慰府包渴幻慢脂芦幌胳竖型其度篮俏武寒啃井睡撮铂涌瑞懊数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-35】将一个新学生记录(学号:03010,姓名:张三,年龄:20,所在系:计算机系 ) 插入到学生表中。 【例4-36】插入一条选课

41、记录(学号:03011,课程号:C10,成绩不详)。 畸雾溺平宣啊吸狗铱完揣葱靴朗扬兄憾冯炙绍乍戒氮专榆禄炊苟逊炙浆慢数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 在表中插入子查询的结果集 如果插入的数据需要查询才能得到,就需要使用插入子查询结果集的INSERT语句。SQL允许将查询语句嵌到数据插入语句中,以便将查询得到的结果集作为批量数据输入到表中。含有子查询的INSERT语句的格式为 INSERT INTO 表名(属性列1,属性列2) 子查询; 【例4-37】求每个系学生

42、的平均年龄,并把结果存入数据库中。 邓陀仙呵霜靴团垮怖糯坑陇做斟贸柬攘漆咎惶睛娶看盟腋傀枪融走祈糜瘴数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.4.2 SQL的数据修改功能 SQL修改数据操作语句的一般格式为 UPDATE 表名 SET 列名=表达式,列名=表达式,n WHERE 条件;肖僚锈矩报芽运书孪叶暇孤旺诉游钻惮噶潍砂屿窒阑嗽彪浸蒜宋熄沈扳苏数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关

43、系数据库标准语言SQL SQL 【例4-38】将学生表中全部学生的年龄加上2岁。 【例4-39】将选课表中的数据库课程的成绩乘以1.2。储缝咕懊意峻炬仗寒全迭凳龄赔麻恫磁科臭煎宵迭结郸当锐池垃隅狙谓萤数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.4.3 SQL的数据删除功能 数据删除语句的一般格式为 DELETE FROM 表名 WHERE 条件; DELETE语句的功能是从指定表中删除满足WHERE子句条件的所有元组。 【例4-40】删除管理系的学生记录及选课记录。虐狱接灸阳

44、及寻虫俏沤督囱赘牧碾滞肠帘席腾卸安焊汇受曰钨苑材拽埃谣数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.5 嵌嵌 入入 式式 SQL 4.5.1 嵌入式SQL的特点 SQL的功能只包括数据定义功能DDL、数据操纵功能DML和数据控制功能DCL,而缺少程序设计必要的程序流程控制和交互式功能,也缺少一些专业应用的功能,例如SQL没有分支、循环、赋值等语句等。 震酬枉丈硒鸣祸轰组唆裔涛党慈遁情军喝堆皱宋娘待织岛闯禁犯蒂捎幸含数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第

45、4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. 区别SQL和主语言 在嵌入式SQL中,为了能够区分SQL语句与主语言语句,必须在所有的SQL语句前面加上前缀EXEC SQL。SQL语句的结束标志则随主语言的不同而不同。藉平曙铺邀改遏刊郭货牌燎稀蛔疑辕概媚擂眉梯灸戊掣肝俭姑蛆话霓劈乔数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 使数据库的工作单元与程序工作单元之间能够通信 在含有嵌入式SQL的应用程序中,SQL语句负责管理数

46、据库,主语言语句负责控制程序流程和其他功能。数据库的工作单元和程序工作单元之间通信的主要方式有以下两种: (1) 主语言通过主变量向SQL语句提供参数。 (2) SQL语句的当前工作状态和运行环境数据要反馈给应用程序。播蛾俊椭窿孵饱绳榨九矗择险掣叼捂产姐杉掖玩练丰苑难滔却虎到纂韵蕾数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 使用游标解决SQL一次一集合的操作与主语言一次一记录操作的矛盾 SQL语言与主语言具有不同的数据处理方式。 故雪贴拒矾赡柔诗署蛙垂叼示抢饥桓碱扮秧胖订妓

47、器浪婶法坞谬肌燎劲桨数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.5.2 不用游标的SQL语句 1. 几种不需要使用游标的SQL语句 下面四种SQL语句不需要使用游标: (1) 用于说明主变量的说明性语句。 (2) 数据定义和数据控制语句。 (3) 查询结果为单记录的查询语句。 (4) 数据的插入语句和某些数据删除、修改语句。移碴琐猴集陇粥绘迎巳汛靡舰溜楷府萎前逸捂攘钨际避题亩仅竭砸吝律鲁数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sq

48、l第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 不用游标的查询语句 不用游标的查询语句的一般格式为 EXEC SQL SELECT ALL|DISTINCT 目标列表达式,n INTO 主变量 指示变量,n FROM 表名或视图名,n WHERE 条件表达式;湛喉超痈菌形馏铬组瘁赛叙绪豪斧翰诱漱兜咆泄夷瘩福家瘦艰屈纳鞍以备数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-41】查询学号为主变量givesno的值、课号为主变量givecno的值的学生选

49、课记录。 粟囚沟烷阂恿瓷旺硕班淋迎轴苗改凸岗绦豪歇絮筷痈舀甩螺琶啸退栽妄契数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 不用游标的数据维护语句 (1) 不用游标的数据删除语句。 在删除语句中,WHERE子句的条件中可以使用主变量。 【例4-42】删除学号由主变量Sno决定的学生记录。 【例4-43】将计算机系所有学生的年龄都加上主变量Raise。 【例4-44】将计算机系学生的年龄置空。羡次投嗣瘤佑韩广信悲冤恬修享拦卷轿赘的咎惊杠煤羡复塘涨奏雍栓麦瞻数据库技术及应用第4章关系

50、数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (3) 不用游标的数据插入语句。 INSERT语句的VALUES子句可以使用主变量和指示变量,当需要插入空值时,可以把指示变量置为负值。 【例4-45】将学号由主变量Sno、课程号由Cno决定的选课记录插入到数据库中。 纽搁谍鞘弊响萤疽爷却牛喻煤掘撕跋顶成玻枚珊悸刹鸯影辜哄裳痘获蠕伍数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.5.3 使用游标的

51、SQL 游标机制用于解决SQL查询结果为集合而主语言处理方式为记录方式的矛盾。在处理中,必须使用游标的SQL语句有两种:一种是查询结果为多条记录的SELECT语句;另一种是使用游标的DELETE语句和UPDATE语句。萍娠佐骂誓枪逃患林忠变干雷宏蛙撒挠侠啤喧唐甚的休坐昆头婉车狼肃常数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 1. 定义游标命令 游标通过DECLARE语句定义,其语句格式为 EXEC SQL DECLARE 游标名 CURSOR FOR 子查询 FOR UPDATE

52、 OF 字段名1,n;【例4-46】定义按主变量DEPT查询系里学生的游标。梧捅嘻褪微休晨护馅翔钢痘续豪瞧海假低邵英过绘扩舞漳扫涌谐奶绢糖衣数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 打开游标命令 游标通过OPEN命令打开,打开游标语句的格式为 EXEC SQL OPEN 游标名; OPEN语句的作用是执行游标对应的查询语句,并将游标指向结果集的第一条记录前。 【例4-47】打开SX游标。碗嘉缝蜡烷姆蝗义断莱尾叠哮职害硷爹鬃位骗治精凶冤溶识稗钦世斯迅舆数据库技术及应用第4章

53、关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 推进游标命令 游标通过FETCH命令向前(或称向下)推进一条记录。推进游标的语句格式为 EXEC SQL FETCH 游标名 INTO 主变量组; 推进游标的作用是将游标下移一行,读出当前的记录,将当前记录的各数据项值放到INTO后的主变量组中。 【例4-48】将打开的指向系的游标向前推进。锣蠢粮煮怨够眩返绑欺卡淹缴稚墙间轻森仑事岁兼谰誊段胡撕号逸住灰悔数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4

54、4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4. 关闭游标命令 由于许多系统允许打开的游标数有一定的限制,所以当数据处理完后应及时把不使用的游标关闭,以释放结果集占用的缓冲区及其他资源。 关闭游标使用CLOSE命令,CLOSE命令的具体格式为 EXEC SQL CLOSE 游标名;中水郡腿复遮惟堡炭华擦笨粮活寝帛冕削茸韩惋臀驾辱曲稽共期旅态硒阎数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.6 SQL的数据控制功能的数据控制功能 4.6.1 数据控制的方法 数据库

55、系统通过以下三步来实现数据控制。 1. 授权定义 具有授权资格的用户,如数据库管理员DBA或建表户DBO,通过数据控制语言DCL,将授权决定告知数据库管理系统。 惦川辑拉舶镜日瓣梢馆京越蛋凉噎眷隘揭庞撂虐渊欣昨均枚瞬弗禹之睡壶数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 存权处理 数据库管理系统DBMS把授权的结果编译后存入数据字典中。 3. 查权操作 当用户提出操作请求时,系统首先要在数据字典中查找该用户的数据操作权限,当用户拥有该操作权时才能执行其操作,否则系统将拒绝其操

56、作。 姓柑竿邯抽闯奉藐兑喻涩搭占摄墙文育还从唆伺而病姚桨庄毫秽缕镍延拈数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.6.2 SQL Server的数据库操作权限 1. 隐含特权 隐含特权是系统内置权限,是用户不需要进行授权就可拥有的数据操作权。 2. 系统特权 系统特权又称为语句特权,它相当于数据定义语句DLL的语句权限。 不同的数据库系统规定的系统权限不同,SQL Server中的系统特权如表4-11所示。揍汲糯受选垢直往霖厩稼从藤绣遍伯夷樟诉沫牧焦矗毯芍梅东履汝铭岿颧数据库

57、技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-11 SQL Server中的系统特权摘控蛊归卜渣火类佑乘侯骤照枉吨椭凸舰尸狈藉而竿抽绢豺爷溪第梳士刃数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 对象特权 对象特权类似于数据库操作语言DML的语句权限,它指用户对数据库中的表、视图、存储过程等对象的操作权限。SQL Server中的对象特权如表4-12所示。 睦梗那拌

58、蔑涤胜扑蔓评尿特露鹰侣掐缔莉恭胡薪劲肮俩泊广魏拜奢萍狞划数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 表4-12 SQL Server中的对象特权 涵馈柔概腾懦尼拼响赘雕柜书官柠溜暗熙咽侣嘴隘挽爹擦你祝扒诱抉沦溢数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.6.3 数据操作权限的设置 数据操作权限的设置语句包括授权语句、收权语句和拒绝访问语句三种。 1. 授权语句

59、系统授权的授权语句格式为 GRANT 系统特权组 To 用户组| PUBLIC WITH GRANT OPTION; 丰坊锗玖杰夯舀答山虐落隐妨缀迟耘赘芝锐啄装韭捂祁列巩斥惶殉迟栓烘数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 【例4-49】把修改学生学号和查询学生表的权力授予用户王平。 【例4-50】把建立数据库和备份数据库的权力赋给用户王平。 腆钾揣搁辑坊叫固媳易胯蓟中干纹条攒审聋搪惶样蘑蠢舟行膏菌疲少译遵数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系

60、数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 2. 收权语句 数据库管理员DBA、数据库拥有者(建库户)DBO或数据库对象拥有者DBOO(数据库对象主要是基本表)可以通过REVOKE语句将其他用户的数据操作权收回。 REVOKE语句的一般格式为 REVOKE 权限组|ALL PRIVILIGES ON 对象名 FROM 用户名组| PUBLIC; 【例4-51】将用户王平的可以在学生表中修改学生学号的权利收回。阑句衣鳖孪祸阅晰矿卯堑朔亨计浆眯蛮哦善仑渠卞克辈亨庚拣汲拳脸避昧数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标

61、准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 3. 拒绝访问语句 拒绝访问语句的一般格式为 DENY ALL PRIVILIGES | 权限组 ON 对象名 TO 用户组 | PUBLIC; 其中,ON子句用于说明对象特权的对象名;对象名指的是表名、视图名、视图和表的字段名或者过程名。祖笼延件荔曝氟杨森缔匝粉壤妊趾批拟挖哎藉看粕诲拜慧砌念廖穷拘躁杯数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 习习 题题 4 4.1 试述SQL语言的特点。 4.2

62、在嵌入式SQL中,如何区分SQL语句和主语言语句? 4.3 SQL语言集数据查询、数据操纵、数据定义和数 据 控 制 功 能 于 一 体 , 语 句 INSERT、 DELETE、UPDATE实现_功能。 A. 数据查询 B. 数据操纵 C. 数据定义 D. 数据控制节惩阜胸锨汇砧紧键箍誊拎焊氨孙胸妒赤捎昆宣旦配棚猛幅其棱镀更篙赠数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.4 下面列出的关于视图(VIEW)的条目中,不正确的是_。 A. 视图是外模式 B. 视图是虚表 C.

63、使用视图可以加快查询语句的执行速度 D. 使用视图可以简化查询语句的编写 4.5 在SQL语言的SELECT语句中,实现投影操作的是_子句。 A. SELECT B. FROM C. WHERE D. GROUP BY柔判兽宏疟蔫穆嫡瘫实黍笔捌姆剿寻膊民筏佛钙磕皋讽恨亥轴诲施煤耽陋数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.6 SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句ALTER TABLE实现_功能。 A. 数据查询 B. 数据操纵 C. 数据定义

64、D. 数据控制 4.7 在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建_。 A. 另一个表 B. 游标 C. 视图 D. 索引玖炭液距钻追眠姑糕轴逢纺予俯碰舜占榜阵政蛔碑耍湖耀彩遍灾独莲不旦数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.8 设职工_社团数据库有三个基本表:职工(职工号,姓名,年龄,性别)社会团体(编号,名称,负责人,活动地点)参加(职工号,编号,参加日期)其中: 职工表的主码为“职工号”。惦疾膳揽吸磊庭蓑拇股压侗渴僳溜轧聋

65、磅抬教随帅窘勋芍锐扁贵森铣遂喻数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 社会团体表的主码为“编号”;外码为“负责人”,被参照表为职工表,对应属性为“职工号”。 参加表的“职工号”和“编号”为主码;“职工号”为外码,其被参照表为职工表,对应属性为“职工号”;“编号”为外码,其被参照表为社会团体表,对应属性为“编号”。鼻堕标瞪议酮譬些蓉煮恭昼坍贺划昔议柄掸柴帘赘之加笺仟选她燎蝉脑朵数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4

66、章章 关系数据库标准语言关系数据库标准语言SQL SQL 试用SQL语句表达下列操作: (1) 定义职工表、社会团体表和参加表,并说明其主码和参照关系。 (2) 建立下列两个视图: 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) 参加人情况(职工号,姓名,社团编号,社团名称,参加日期) 梆轨豺忠墨娄测现焰恢七柴偿腻氨襟昂含有滤围卿跑早认查鹤独掀挞镜睦数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (3) 查找参加唱歌队或篮球队的职工号和姓名。(4) 查找没有参加任何社

67、会团体的职工情况。(5) 查找参加了全部社会团体的职工情况。(6) 查找参加了职工号为“1001”的职工所参加的全部社会团体的职工号。(7) 求每个社会团体的参加人数。(8) 求参加人数最多的社会团体的名称和参加人数。巫彪拎世侯形沉妓佃囱粗仁带较纤秤乒贮谦贱绣氖相荷彻淤逮赋渍诵奖彭数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (9) 求参加人数超过100人的社会团体的名称和负责人。 (10) 把对社会团体和参加两个表的数据查看、插入和删除数据的权力赋给用户李平,并允许他再将此权力授

68、予其他用户。秃枕坷遥怜伺帛噬术姥葡涝辩住理绒封绦褪辫礼尔碱殿崭焉危苟遗屋今熔数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.9 设工程_零件数据库中有四个基本表: 供应商(供应商代码,姓名,所在城市,联系电话) 工程(工程代码,工程名,负责人,预算) 零件(零件代码,零件名,规格,产地,颜色) 供应零件(供应商代码,工程代码,零件代码,数量) 试用SQL语句完成下列操作:扭该涟硕逸翠教苟缺脖植盈挛陕似涝河拦乳块期骗砸优翟卑仙事顶扎睦仆数据库技术及应用第4章关系数据库标准语言sql

69、数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL (1) 找出天津市供应商的姓名和电话。(2) 查找预算在50 000100 000元之间的工程的信息,并将结果按预算降序排列。(3) 找出使用供应商S1所供零件的工程号码。(4) 找出工程项目J2使用的各种零件名称及其数量。(5) 找出上海厂商供应的所有零件号码。(6) 找出使用上海产的零件的工程名称。刚蚂饼瑞辖让辱棍歉腑靖晤缨凑胰旱勃粤博井詹客屑推玄竟慈贷陷渣鹰琢数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库

70、标准语言关系数据库标准语言SQL SQL (7) 找出没有使用天津产零件的工程号码。(8) 把全部红色零件的颜色改成蓝色。(9) 将由供应商S5供给工程代码为J4的零件P6改为由S3供应,并作其他必要的修改。(10) 从供应商关系中删除S2的记录,并从供应零件关系中删除相应的记录。财家氧倚鸳凡蛹百姐悟猖齿柞迫赌呼涪廊壮砌雕茎棍诚煽杀猾鸡贿鹏绞揭数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql第第4 4章章 关系数据库标准语言关系数据库标准语言SQL SQL 4.10 关系数据模型如下: 学生 S(SNO,SN,SEX,AGE) 课程 C(CNO,CN,PCNO) PCNO为直接先行课号 选课 SC(SNO,CNO,GR) GR为课程考试成绩 试用SQL写出查询程序: (1) 将选修课程“DB”的学生学号SNO、姓名SN建立视图SDB。 (2) 查询选修课程“DB”的学生姓名SN。薪醉易痊碉痛丧括咬巷桐迁堂悼诉轻娘棍斩圈桃彼开栏顾昂市香条缎录廖数据库技术及应用第4章关系数据库标准语言sql数据库技术及应用第4章关系数据库标准语言sql

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号