完整性的要求数据库中数据的正确性相容性约束的实现

上传人:夏** 文档编号:570507909 上传时间:2024-08-04 格式:PPT 页数:33 大小:542KB
返回 下载 相关 举报
完整性的要求数据库中数据的正确性相容性约束的实现_第1页
第1页 / 共33页
完整性的要求数据库中数据的正确性相容性约束的实现_第2页
第2页 / 共33页
完整性的要求数据库中数据的正确性相容性约束的实现_第3页
第3页 / 共33页
完整性的要求数据库中数据的正确性相容性约束的实现_第4页
第4页 / 共33页
完整性的要求数据库中数据的正确性相容性约束的实现_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《完整性的要求数据库中数据的正确性相容性约束的实现》由会员分享,可在线阅读,更多相关《完整性的要求数据库中数据的正确性相容性约束的实现(33页珍藏版)》请在金锄头文库上搜索。

1、完整性的要求数据库中数据的正确性相容性约束的实现Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望约束是基于数据变化的约束是基于数据变化的Trigger则是基于对表的操作(动作)的则是基于对表的操作(动作)的当指定的表上发生特定的操作,系统便激活当指定的表上发生特定的操作,系统便激活当指定的表上发生特定的操作,系统便激活当指定的表上发生特定的操作,系统便激活TriggerTrigger程序程序程序程序大部分大部分大部分大部分DBMSDBMS产品均支持产品均支持产品均支持产品均支持Tri

2、ggerTrigger触发器类型触发器类型Insert / Update / DeleteInsert / Update / DeleteBefore / AfterBefore / After举例:举例:CREATETRIGGERreminderCREATETRIGGERreminderONtitlesONtitlesFORINSERT,UPDATE,DELETEFORINSERT,UPDATE,DELETEASASEXECmaster.xp_sendmailMaryM,EXECmaster.xp_sendmailMaryM,Dontforgettoprintareportforthedis

3、tributors.Dontforgettoprintareportforthedistributors.GOGO触发器可以强制比用触发器可以强制比用触发器可以强制比用触发器可以强制比用 CHECKCHECK约束定义的约束更为复杂的约束定义的约束更为复杂的约束定义的约束更为复杂的约束定义的约束更为复杂的约束。约束。约束。约束。 与与与与 CHECKCHECK约束不同,触发器可以引用其它表中约束不同,触发器可以引用其它表中约束不同,触发器可以引用其它表中约束不同,触发器可以引用其它表中的列。的列。的列。的列。触发器可通过数据库中的相关表实现级联更改;不过,通触发器可通过数据库中的相关表实现级联更

4、改;不过,通触发器可通过数据库中的相关表实现级联更改;不过,通触发器可通过数据库中的相关表实现级联更改;不过,通过级联引用完整性约束可以更有效地执行这些更改。过级联引用完整性约束可以更有效地执行这些更改。过级联引用完整性约束可以更有效地执行这些更改。过级联引用完整性约束可以更有效地执行这些更改。触发器也可以评估数据修改前后的表状态,并根据其差异触发器也可以评估数据修改前后的表状态,并根据其差异触发器也可以评估数据修改前后的表状态,并根据其差异触发器也可以评估数据修改前后的表状态,并根据其差异采取对策。采取对策。采取对策。采取对策。一个表中的多个同类触发器(一个表中的多个同类触发器(一个表中的多

5、个同类触发器(一个表中的多个同类触发器(INSERTINSERT、UPDATEUPDATE或或或或 DELETEDELETE)允许采取多个不同的对策以响应同一个修改语)允许采取多个不同的对策以响应同一个修改语)允许采取多个不同的对策以响应同一个修改语)允许采取多个不同的对策以响应同一个修改语句。句。句。句。激发一个外部动作激发一个外部动作激发一个外部动作激发一个外部动作触发器的用途触发器的用途 存储过程存储过程存储过程存储过程是一组为了完成特定功能的是一组为了完成特定功能的是一组为了完成特定功能的是一组为了完成特定功能的SQLSQL语语语语句集,经编译后存储在数据库中。用户通过指定句集,经编译

6、后存储在数据库中。用户通过指定句集,经编译后存储在数据库中。用户通过指定句集,经编译后存储在数据库中。用户通过指定存储过程的名称并给出参数(如果该存储过程带存储过程的名称并给出参数(如果该存储过程带存储过程的名称并给出参数(如果该存储过程带存储过程的名称并给出参数(如果该存储过程带有参数)来执行它。有参数)来执行它。有参数)来执行它。有参数)来执行它。存储过程存储过程(StoredProcedure)允许模块化程序设计允许模块化程序设计允许模块化程序设计允许模块化程序设计 ,含有控制语句,含有控制语句,含有控制语句,含有控制语句存储过程能够实现较快的执行速度存储过程能够实现较快的执行速度存储过

7、程能够实现较快的执行速度存储过程能够实现较快的执行速度存储过程能够减少网络流量存储过程能够减少网络流量存储过程能够减少网络流量存储过程能够减少网络流量存储过程可被作为一种安全机制来充分利用存储过程可被作为一种安全机制来充分利用存储过程可被作为一种安全机制来充分利用存储过程可被作为一种安全机制来充分利用存储过程存储过程- -示例示例CreateProcedureCreateProcedureupdate_deptupdate_dept( (ININold_dept_numINT,old_dept_numINT, ININnew_dept_numINT,new_dept_numINT, ININn

8、ew_dept_nameChar(20),new_dept_nameChar(20), ININnew_dept_head_idINT)new_dept_head_idINT)BEGINATOMICBEGINATOMICInsertIntoDepartmentInsertIntoDepartment(dept_id,dept_name,(dept_id,dept_name,dept_head_id)dept_head_id)Values(new_dept_num,Values(new_dept_num,new_dept_name,new_dept_name,new_dept_head_id);

9、new_dept_head_id);UpdateemployeeUpdateemployeeSetdept_id=new_dept_numSetdept_id=new_dept_numWhereWheredept_id=old_dept_num;dept_id=old_dept_num;DeleteFromdepartmentDeleteFromdepartmentWhereWheredept_id=old_dept_num;dept_id=old_dept_num;ENDENDExecuteupdate_deptExecuteupdate_dept123,212,cs,98001123,21

10、2,cs,98001数据访问接口数据访问接口交互式交互式SQL嵌入的嵌入的SQLCLI和和ODBC、JDBCOLEDB嵌入式嵌入式SQL宿主语言宿主语言宿主语言宿主语言处理复杂运算,执行复杂过程处理复杂运算,执行复杂过程处理复杂运算,执行复杂过程处理复杂运算,执行复杂过程丰富的库函数丰富的库函数丰富的库函数丰富的库函数数据库访问的困难数据库访问的困难数据库访问的困难数据库访问的困难嵌入的嵌入的嵌入的嵌入的SQLSQL方便的数据库访问方便的数据库访问方便的数据库访问方便的数据库访问事务处理能力事务处理能力事务处理能力事务处理能力上下文无关,无法处理复杂过程上下文无关,无法处理复杂过程上下文无关,

11、无法处理复杂过程上下文无关,无法处理复杂过程嵌入式嵌入式SQL处理复杂过程处理复杂过程处理复杂过程处理复杂过程宿主语言宿主语言宿主语言宿主语言访问数据库访问数据库访问数据库访问数据库嵌入的嵌入的嵌入的嵌入的SQLSQL语句语句语句语句嵌入式嵌入式SQL宿主语言与嵌入的宿主语言与嵌入的宿主语言与嵌入的宿主语言与嵌入的SQLSQL语句语句语句语句不同的体系不同的体系不同的体系不同的体系DBDB厂商提供库函数厂商提供库函数厂商提供库函数厂商提供库函数需对需对需对需对SQLSQL语句进行语句进行语句进行语句进行预编译预编译预编译预编译宿主语言的体系宿主语言的体系宿主语言的体系宿主语言的体系SQLSQL

12、语句语句语句语句宿主语言的函数调用(参数)宿主语言的函数调用(参数)宿主语言的函数调用(参数)宿主语言的函数调用(参数)统一编译统一编译统一编译统一编译目标程序目标程序目标程序目标程序嵌入式嵌入式嵌入式嵌入式SQLSQL语句语句语句语句由由由由EXECSQLEXECSQL引导、以引导、以引导、以引导、以 ; ; 结尾结尾结尾结尾EXECSQLDeleteFromEXECSQLDeleteFrom学生学生学生学生; ;匹配失衡问题匹配失衡问题数据模型之间的匹配数据模型之间的匹配数据模型之间的匹配数据模型之间的匹配SQLSQL关系数据模型关系数据模型关系数据模型关系数据模型宿主语言宿主语言宿主语言

13、宿主语言传统数据模型传统数据模型传统数据模型传统数据模型整数、实数、指针整数、实数、指针整数、实数、指针整数、实数、指针寻找两者之间的平衡点寻找两者之间的平衡点寻找两者之间的平衡点寻找两者之间的平衡点SQLSQL数据以数据以数据以数据以单个单个单个单个元组出现元组出现元组出现元组出现避免元组的集合(组合)避免元组的集合(组合)避免元组的集合(组合)避免元组的集合(组合)SQL/宿主语言的接口变量变量变量变量储存数据的单元储存数据的单元储存数据的单元储存数据的单元SQL/SQL/宿主语言通过变量传递信息宿主语言通过变量传递信息宿主语言通过变量传递信息宿主语言通过变量传递信息共同的变量集合共同的变

14、量集合共同的变量集合共同的变量集合共享变量共享变量共享变量共享变量以传统的方式在宿主语言中使用以传统的方式在宿主语言中使用以传统的方式在宿主语言中使用以传统的方式在宿主语言中使用在在在在SQLSQL语句中使用(以语句中使用(以语句中使用(以语句中使用(以:作前缀)作前缀)作前缀)作前缀)变量的声明变量的声明宿主变量宿主变量宿主变量宿主变量仅用于宿主语言的语句中仅用于宿主语言的语句中仅用于宿主语言的语句中仅用于宿主语言的语句中共享变量共享变量共享变量共享变量可在宿主语言、嵌入的可在宿主语言、嵌入的可在宿主语言、嵌入的可在宿主语言、嵌入的SQLSQL语句中使用语句中使用语句中使用语句中使用共享变量

15、声明段共享变量声明段共享变量声明段共享变量声明段变量的声明变量的声明inti=2,j=3;inti=2,j=3;EXECSQLBEGINDECLARESECTION;EXECSQLBEGINDECLARESECTION;charchar学号学号学号学号8,8,姓名姓名姓名姓名20;20;charchar所在系所在系所在系所在系6;6;EXECSQLENDDECLARESECTION;EXECSQLENDDECLARESECTION;使用共享变量使用共享变量嵌入式嵌入式嵌入式嵌入式SQLSQL中,以共享变量替代具体的值中,以共享变量替代具体的值中,以共享变量替代具体的值中,以共享变量替代具体的值

16、在运行时获得变量的值在运行时获得变量的值在运行时获得变量的值在运行时获得变量的值使用共享变量使用共享变量UpdateUpdate、InsertInsert中直接使用,替代值中直接使用,替代值中直接使用,替代值中直接使用,替代值EXECSQLUpdateEXECSQLUpdate学生学生学生学生 SetSet所在系所在系所在系所在系=:=:所在系所在系所在系所在系WhereWhere姓名姓名姓名姓名=:=:姓名姓名姓名姓名; ;在在在在Select-From-WhereSelect-From-Where中需注意中需注意中需注意中需注意单元组单元组单元组单元组多元组:引入多元组:引入多元组:引入多

17、元组:引入游标游标游标游标( (Cursor)Cursor),逐行处理逐行处理逐行处理逐行处理单元组查询语句单元组查询语句只返回一个元组的只返回一个元组的只返回一个元组的只返回一个元组的Select-From-WhereSelect-From-Where语句语句语句语句Select-Into-From-WhereSelect-Into-From-WhereEXECSQLSelectEXECSQLSelect学号学号学号学号Into:Into:学号学号学号学号FromFrom学生学生学生学生WhereWhere姓名姓名姓名姓名=:=:姓名姓名姓名姓名; ;注意返回值的状态判定注意返回值的状态判定

18、注意返回值的状态判定注意返回值的状态判定游标游标CursorCursorCursor是系统为用户开设的一个数据缓冲区,是系统为用户开设的一个数据缓冲区,是系统为用户开设的一个数据缓冲区,是系统为用户开设的一个数据缓冲区,存放存放存放存放SQLSQL语句的执行结果语句的执行结果语句的执行结果语句的执行结果用户可以逐行读取(处理)用户可以逐行读取(处理)用户可以逐行读取(处理)用户可以逐行读取(处理)SelectSelect结果集中的结果集中的结果集中的结果集中的数据数据数据数据CursorresultSetCursorresultSetCursorPositionCursorPosition动态

19、动态SQL语句可变语句可变条件可变条件可变数据库对象、查询条件均可变数据库对象、查询条件均可变SQL中的事务中的事务是构成单一逻辑工作单元的操作集合是构成单一逻辑工作单元的操作集合事务管理器事务管理器事务恢复机制事务恢复机制并发调度机制并发调度机制事务的性质事务的性质ACID原子性:原子性:事务是原子的,要么都做,要么都不做事务是原子的,要么都做,要么都不做一致性:一致性:保证数据库的一致性保证数据库的一致性从一个一致状态从一个一致状态另一个一致状态另一个一致状态隔离性:隔离性:事务相互隔离事务相互隔离持久性持久性一旦事务提交成功,更新则将永久有效一旦事务提交成功,更新则将永久有效SQL中的事

20、务中的事务事务的结束事务的结束提交提交提交提交COMMITCOMMIT事务成功结束,永久保存修改事务成功结束,永久保存修改事务成功结束,永久保存修改事务成功结束,永久保存修改将上次提交后的修改,全部保存将上次提交后的修改,全部保存将上次提交后的修改,全部保存将上次提交后的修改,全部保存回滚回滚回滚回滚ROLLBACKROLLBACK事务异常终止,撤消修改,恢复原值事务异常终止,撤消修改,恢复原值事务异常终止,撤消修改,恢复原值事务异常终止,撤消修改,恢复原值将上次提交后的修改,全部撤消将上次提交后的修改,全部撤消将上次提交后的修改,全部撤消将上次提交后的修改,全部撤消SQL编程编程嵌入式嵌入式

21、嵌入式嵌入式嵌入式嵌入式SQLSQLDBMSDBMS提供的高级语言方式提供的高级语言方式提供的高级语言方式提供的高级语言方式HostVariable&ShareVariableHostVariable&ShareVariable直接使用直接使用直接使用直接使用SQLSQL语句语句语句语句需预编译需预编译需预编译需预编译各各各各DBMSDBMS厂商均提供相应的工具厂商均提供相应的工具厂商均提供相应的工具厂商均提供相应的工具SQL编程编程CLI(API)CLI(CallLevelInterface)定义了一套可以从宿主语言调用的公共定义了一套可以从宿主语言调用的公共函数函数提供一套提供一套API,

22、通过函数调用,实现对通过函数调用,实现对DBMS的操作的操作DBLib、OCI、ODBC、JDBC逐步替代嵌入式逐步替代嵌入式SQLApplicationOracleOracleOCIOCIOracle 的的CLI模型模型ODBC(OpenDataBaseConnectivty:开放数据库互连:开放数据库互连)ODBCODBC是是是是MicrosoftWindowsOpenStandardsArchitectureMicrosoftWindowsOpenStandardsArchitecture( (WOSA,WindowsWOSA,Windows开放服务体系开放服务体系开放服务体系开放服务体

23、系) )的重要组成部分的重要组成部分的重要组成部分的重要组成部分, ,由由由由MicrosoftMicrosoft公司于公司于公司于公司于19911991年底发布年底发布年底发布年底发布, ,短短几年已成为事实上的工业标准短短几年已成为事实上的工业标准短短几年已成为事实上的工业标准短短几年已成为事实上的工业标准. .它建它建它建它建立了一组规范立了一组规范立了一组规范立了一组规范, ,提供了一套分层提供了一套分层提供了一套分层提供了一套分层( (随着层的扩展随着层的扩展随着层的扩展随着层的扩展, ,数据服务能力不数据服务能力不数据服务能力不数据服务能力不断的增强断的增强断的增强断的增强) )的

24、标准的标准的标准的标准API(API(支持支持支持支持SQL),SQL),它解决了嵌入式它解决了嵌入式它解决了嵌入式它解决了嵌入式SQLSQL接口的非接口的非接口的非接口的非规范核心规范核心规范核心规范核心, ,数据应用系统用它来访问任何提供了数据应用系统用它来访问任何提供了数据应用系统用它来访问任何提供了数据应用系统用它来访问任何提供了ODBCODBC驱动程序驱动程序驱动程序驱动程序( (一组一组一组一组DLL)DLL)的数据库的数据库的数据库的数据库, ,结束了过去针对不同的数据库系统开发须结束了过去针对不同的数据库系统开发须结束了过去针对不同的数据库系统开发须结束了过去针对不同的数据库系

25、统开发须掌握相应数据访问掌握相应数据访问掌握相应数据访问掌握相应数据访问APIAPI的时代的时代的时代的时代. .事实上事实上事实上事实上, ,可将可将可将可将ODBCODBC体系看作统一体系看作统一体系看作统一体系看作统一的数据访问界面的数据访问界面的数据访问界面的数据访问界面, ,而使这种统一的数据访问成为可能的就是各数而使这种统一的数据访问成为可能的就是各数而使这种统一的数据访问成为可能的就是各数而使这种统一的数据访问成为可能的就是各数据库产品厂商提供的相应的据库产品厂商提供的相应的据库产品厂商提供的相应的据库产品厂商提供的相应的ODBCProvider(ODBCODBCProvider

26、(ODBC提供者即提供者即提供者即提供者即ODBCODBC驱动驱动驱动驱动) )。 结合结合结合结合ODBCAPIODBCAPI调用调用调用调用顺序描叙工作流程顺序描叙工作流程顺序描叙工作流程顺序描叙工作流程: :初始初始初始初始化化化化( (分配环境分配环境分配环境分配环境-分配连分配连分配连分配连接句柄接句柄接句柄接句柄-与服务器连与服务器连与服务器连与服务器连接接接接-分配语句句柄分配语句句柄分配语句句柄分配语句句柄)-)-SQL-SQL处理处理处理处理( (语句处理语句处理语句处理语句处理和检索部分和检索部分和检索部分和检索部分)-)-终终终终止止止止( (释放语句句柄释放语句句柄释放

27、语句句柄释放语句句柄-与与与与服务器断开服务器断开服务器断开服务器断开-释放连释放连释放连释放连接句柄接句柄接句柄接句柄-释放环境释放环境释放环境释放环境) )OLEDB(ObjectLinkandEmbeddingDataBase)OLEDBOLEDB作为一种数据访问接口体系作为一种数据访问接口体系作为一种数据访问接口体系作为一种数据访问接口体系, ,体现了体现了体现了体现了MicrosoftMicrosoft的的的的通用数据访问通用数据访问通用数据访问通用数据访问(UDA)(UDA)策略的理念策略的理念策略的理念策略的理念. .UDAUDA能够通过标准接口来访问各种类型的数据能够通过标准接

28、口来访问各种类型的数据能够通过标准接口来访问各种类型的数据能够通过标准接口来访问各种类型的数据. .同于同于同于同于ODBCODBC体系它也提供了一套标准体系它也提供了一套标准体系它也提供了一套标准体系它也提供了一套标准APIAPI, ,不过不过不过不过OLEDBAPIOLEDBAPI是完全基于是完全基于是完全基于是完全基于COMCOM的的的的, ,其其其其特点是采用了多层模型特点是采用了多层模型特点是采用了多层模型特点是采用了多层模型. .在在在在COMCOM通信层的一侧是数据另一侧则是数据使用者通信层的一侧是数据另一侧则是数据使用者通信层的一侧是数据另一侧则是数据使用者通信层的一侧是数据另

29、一侧则是数据使用者. .这种基于这种基于这种基于这种基于COMCOM的通信可被概括为在抽象对象的通信可被概括为在抽象对象的通信可被概括为在抽象对象的通信可被概括为在抽象对象( (如如如如DataSourceDataSource、SessionSession、CommandCommand 和和和和 RowsetRowset) )上执行的操作上执行的操作上执行的操作上执行的操作. .因此因此因此因此, ,当使用者连接到当使用者连接到当使用者连接到当使用者连接到DataSourceDataSource, ,打打打打开开开开 SessionSession, ,发出发出发出发出CommandComman

30、d, ,并返回数据并返回数据并返回数据并返回数据RowsetRowset时时时时, ,便会出现这种情况便会出现这种情况便会出现这种情况便会出现这种情况. . 事实上事实上事实上事实上, ,OLEDBOLEDB是系统级的编程接口是系统级的编程接口是系统级的编程接口是系统级的编程接口, ,它定义了一组它定义了一组它定义了一组它定义了一组COMCOM接口接口接口接口, ,这组接口封装这组接口封装这组接口封装这组接口封装了各种数据系统的访问操作了各种数据系统的访问操作了各种数据系统的访问操作了各种数据系统的访问操作, ,这组接口为数据使用者和数据提供者建立了标准这组接口为数据使用者和数据提供者建立了标

31、准这组接口为数据使用者和数据提供者建立了标准这组接口为数据使用者和数据提供者建立了标准, ,OLEDBOLEDB还提供了一组标准的服务组件还提供了一组标准的服务组件还提供了一组标准的服务组件还提供了一组标准的服务组件, ,用于提供查询、缓存、数据更新、用于提供查询、缓存、数据更新、用于提供查询、缓存、数据更新、用于提供查询、缓存、数据更新、事务处理等操作事务处理等操作事务处理等操作事务处理等操作, ,因此数据提供方只需实现一些简单的数据操作因此数据提供方只需实现一些简单的数据操作因此数据提供方只需实现一些简单的数据操作因此数据提供方只需实现一些简单的数据操作. .在使用方就在使用方就在使用方就

32、在使用方就可以获得全部的数据控制能力可以获得全部的数据控制能力可以获得全部的数据控制能力可以获得全部的数据控制能力. .OLEDB组成组成数据提供者数据提供者数据提供者数据提供者(DataProvider)(DataProvider)提供数据存储的组件和数据,数据小到普提供数据存储的组件和数据,数据小到普提供数据存储的组件和数据,数据小到普提供数据存储的组件和数据,数据小到普通的文本文件、大到主机上的复杂数据库,或者电子邮件存储,都是数通的文本文件、大到主机上的复杂数据库,或者电子邮件存储,都是数通的文本文件、大到主机上的复杂数据库,或者电子邮件存储,都是数通的文本文件、大到主机上的复杂数据库

33、,或者电子邮件存储,都是数据提供者的例子据提供者的例子据提供者的例子据提供者的例子. .有有有有 的文档把这些软件组件的开发商也称为数据提供者的文档把这些软件组件的开发商也称为数据提供者的文档把这些软件组件的开发商也称为数据提供者的文档把这些软件组件的开发商也称为数据提供者. .数据服务提供者数据服务提供者数据服务提供者数据服务提供者(DataServiceProvider)(DataServiceProvider)位于数据提供者之上、从位于数据提供者之上、从位于数据提供者之上、从位于数据提供者之上、从过去的数据库管理系统中分离出来、独立运行的功能组件过去的数据库管理系统中分离出来、独立运行的

34、功能组件过去的数据库管理系统中分离出来、独立运行的功能组件过去的数据库管理系统中分离出来、独立运行的功能组件, ,例如查询处例如查询处例如查询处例如查询处理器和游标引擎理器和游标引擎理器和游标引擎理器和游标引擎(CursorEngine),(CursorEngine),这些组件使得数据提供者提供的数据这些组件使得数据提供者提供的数据这些组件使得数据提供者提供的数据这些组件使得数据提供者提供的数据以表状数据以表状数据以表状数据以表状数据(TabularData)(TabularData)的形式向外表示(不管真实的物理数据是如的形式向外表示(不管真实的物理数据是如的形式向外表示(不管真实的物理数据

35、是如的形式向外表示(不管真实的物理数据是如何组织和存储的)何组织和存储的)何组织和存储的)何组织和存储的), ,并实现数据的查询和修改功能并实现数据的查询和修改功能并实现数据的查询和修改功能并实现数据的查询和修改功能.SQLServer7.0.SQLServer7.0的查的查的查的查询处理程序就是这种组件的典型例子询处理程序就是这种组件的典型例子询处理程序就是这种组件的典型例子询处理程序就是这种组件的典型例子. .数据消费者数据消费者数据消费者数据消费者(DataConsumer)(DataConsumer)任何需要访问数据的系统程序或应用程任何需要访问数据的系统程序或应用程任何需要访问数据的

36、系统程序或应用程任何需要访问数据的系统程序或应用程序序序序, ,除了典型的数据库应用程序之外除了典型的数据库应用程序之外除了典型的数据库应用程序之外除了典型的数据库应用程序之外, ,还包括需要访问各种数据源的开发还包括需要访问各种数据源的开发还包括需要访问各种数据源的开发还包括需要访问各种数据源的开发工具或语言工具或语言工具或语言工具或语言. .1、统计有学生选修的课程门数、统计有学生选修的课程门数2、求选修了数据库课的学生的平均年龄、求选修了数据库课的学生的平均年龄3、求刘宇老师所授课程的每门课程的学生平均值、求刘宇老师所授课程的每门课程的学生平均值4、统计每门课程的学生选修人数。要求输出课

37、程号、统计每门课程的学生选修人数。要求输出课程号和人数,和人数,查询结果按人数降序排列,若人数相同,按课程号查询结果按人数降序排列,若人数相同,按课程号升序排列升序排列5、检索学号比汪同学大,而年龄比他小的学生姓名、检索学号比汪同学大,而年龄比他小的学生姓名6、求年龄大于女同学平均年龄的男学生姓名和年龄、求年龄大于女同学平均年龄的男学生姓名和年龄7、求年龄大于所有女同学年龄的男学生姓名和年龄、求年龄大于所有女同学年龄的男学生姓名和年龄8、检索全部学生都选修的课程的课程号和课程名、检索全部学生都选修的课程的课程号和课程名9、检索选修课程包含了刘宇老师所授课程的学生学、检索选修课程包含了刘宇老师所

38、授课程的学生学号号作业作业1 1、使用、使用、使用、使用SQLSQL创建关系创建关系创建关系创建关系学生学生学生学生、课程课程课程课程、选课选课选课选课2 2、把自己的信息添加到学生表中、把自己的信息添加到学生表中、把自己的信息添加到学生表中、把自己的信息添加到学生表中3 3、检索每一门课程成绩都大于或等于、检索每一门课程成绩都大于或等于、检索每一门课程成绩都大于或等于、检索每一门课程成绩都大于或等于8585分的学生的分的学生的分的学生的分的学生的学号、姓名和性别,并把检索的值送到已经存在的学号、姓名和性别,并把检索的值送到已经存在的学号、姓名和性别,并把检索的值送到已经存在的学号、姓名和性别

39、,并把检索的值送到已经存在的表表表表优秀学生优秀学生优秀学生优秀学生(学号、姓名、性别)中(学号、姓名、性别)中(学号、姓名、性别)中(学号、姓名、性别)中4 4、在选课表中删除没有成绩的记录、在选课表中删除没有成绩的记录、在选课表中删除没有成绩的记录、在选课表中删除没有成绩的记录5 5、把汪姓同学的成绩都删除、把汪姓同学的成绩都删除、把汪姓同学的成绩都删除、把汪姓同学的成绩都删除6 6、把数据库不及格,并年龄小于、把数据库不及格,并年龄小于、把数据库不及格,并年龄小于、把数据库不及格,并年龄小于1818岁的同学的数据岁的同学的数据岁的同学的数据岁的同学的数据库成绩乘以库成绩乘以库成绩乘以库成绩乘以107%107%

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

最新文档


当前位置:首页 > 办公文档 > 工作计划

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