Transact-SQL介绍.doc_第1页
Transact-SQL介绍.doc_第2页
Transact-SQL介绍.doc_第3页
Transact-SQL介绍.doc_第4页
Transact-SQL介绍.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第5章 Transact-SQL介绍第5章 Transact-SQL介绍本章概述Transact-SQL是一种数据定义、操作和控制语言,是SQL Server中的重要元素。本章介绍了该编程语言,同时描述了它的语句类型和语法元素。Transact-SQL是SQL Server编程的重要工具,是SQL Server编程的基础。无论做为数据库管理员、数据库程序员都必须熟练掌握该语言进行数据库的设计、维护和编程。即使作为一名应用程序设计者,也必须熟练掌握Transact-SQL语法以便同SQL-Server进行交互。教学目标l 了解Transact-SQL编程语言的概念l 了解Transact-SQL语句的类型l 了解Transact-SQL的语法元素教学重点l Transact-SQL编程语言的概念及其语法要素。教学难点l 比较该语言同其他编程语言的异同,理解Transact-SQL对SQL Server的作用。l 理解语法要素。教学资源课本知识点5.1Transact-SQL编程语言5.2Transact-SQL语句的种类5.3Transact-SQL语法的要素实验实验5-1:使用SQL Server 联机丛书习题习题1-对应5.3中的语法要素习题2-对应5.3中的语法要素习题3-对应5.2中的语句的种类习题4-对应5.1中的介绍习题5-对应 5.3中的语法要素习题6-对应5.3中的语法要素习题7-对应5.3中的语法要素教师光盘实验文件Labfilesallfiles.exe习题解答tPrepanswer.doc教师指导手册包新版幻灯片Powerpnt PPT_2071_2073_05.ppt先修知识在正式开始学习本章内容以前,学生须具备下列知识基础。知识基础推荐补充熟悉关系数据库基本概念数据库基础了解编程语言的基本概念概念程序设计导论建议学时课堂教学(2课时)+实验教学(2课时)教学过程5.1 Transact-SQL编程语言教学提示 :本节主要达到两个目的。l 了解Transact-SQL编程语言的概念。(略讲)l 了解Transact-SQL编程语言的基本作用。(略讲)内容教学方法提示讲授:编程语言是程序设计的重要工具,做为SQL Server程序员,Transact-SQL是必须熟练掌握的工具。作为编程语言,Transact-SQL同我们所熟悉的其他编程语言,如C#,是不太一样的。Transact-SQL必须运行在SQL Server的环境用,只能访问SQL Server中的对象。阅书:5.1幻灯:第3页l 这里需要补充其他编程语言的背景知识。l 和前面2层、3层模型结合起来说。5.2 Transact-SQL语句的种类教学提示 :本节主要达到一个目的。l 了解 Transact-SQL语句的分类,包括数据定义语言和数据控制语言。(略讲+演示)内容教学方法提示讲授:T-SQL大致分成3种。数据定义语言(DDL)用于管理数据库中的对象,比如创建数据库、删除表等;数据控制语言(DCL)用于配置数据库用户的权限,比如规定student只能访问questions表不能访问answers表;数据操作语言(DML)用于操作表中的数据,比如获取books表中的所有行内容。演示:课本的例子阅书:5.2幻灯:第5-8页l 结合Northwind来讲5.3 Transact-SQL语法的要素 教学提示 :本节主要达到三个目的。l 掌握Transact-SQL的语法和数据类型。 (精讲)l 掌握Transact-SQL的函数。(精讲+演示)l 掌握Transact-SQL的表达式和关键字。(精讲+演示)内容教学方法提示讲授:Transact-SQL的数据操作语言是由下面的元素构成的:批处理命令注释语句标识符数据类型变量系统函数运算符表达式流控制语言元素保留关键字我们将在后面的章节中详细介绍其中的每一个元素。下面,让我们结合演示分别认识一下这些元素。演示:批处理命令注释语句标识符数据类型变量系统函数运算符表达式流控制语言元素保留关键字阅书:5.3幻灯:第10-28页l 需要详细演示书中的每个例子总结:Transact-SQL是SQL程序设计的灵魂,掌握好Transact-SQL对于数据库程序员来说是非常重要的事情。Transact-SQL语言贯穿了整本书的始终,同学们在学习的时候需要经常复习本章内容。总结经过本章的学习,我们了解了下列的知识和内容。l Transact-SQL编程语言的概念l Transact-SQL语句的类型l Transact-SQL的语法元素在第六章中,我们将学习使用Transact-SQL最多的工具查询分析器,从而使大家能够顺利地将本章的知识运用到实际工作中去。随堂练习1 在某个使用SQL Server 2000创建数据库中,有Products和OrderDetails两个表,在OrderDetails表中有一个FOREIGN KEY外键约束参考Products表。在OrderDetials上还有一个UPDATE触发器。现在要提高插入OrderDetails表的速度,应当如何做?A. 使用ALTER TABLE语句和ON UPDATE选项修改OrderDetails表B. 使用ALTER TABLE语句和DISABLE TRIGGER ALL选项修改OrderDetails表C. 使用ALTER TABLE语句和NOCHECK CONSTRAINT选项修改OrderDetails表D. 使用ALTER TABLE语句和NOCHECK CONSTRAINT选项修改Products表正确答案:(D)分析:在OrderDetails表中有一个FOREIGN KEY外键约束参考Products表,这样在插入新的数据行时会检查外键约束。使用带有NOCHECK约束的ALTER TABLE语句,可以使数据的加载速度提高。具体做法是:首先删除CHECK约束,再加载数据,最后恢复CHECK约束2 在某个使用SQL Server 2000创建数据库中,有Products和Company两个表,在Company表中有一个FOREIGN KEY外键约束参考Products表。在Company上还有一个DELETE触发器。现在要提高删除Company表中记录的速度,应当如何做?A. 使用ON UPDATE子句修改Company表B. 使用DISABLE TRIGGER ALL选项修改Company表C. 使用NOCHECK CONSTRAINT选项修改Company表D. 使用NOCHECK CONSTRAINT选项修改Products表正确答案:(C)3 在数据库中有存储过程如下所示:CREATE PROCEDURE PASBEGINDECLARE Err intSET Err=-1UPDATE Tb1 SET Salary=Salary*1.1SET Err=ERRORIF Err = 0Return ROWCOUNTELSEReturn ErrEND在执行时后返回值总是为0,请问应当如何修改?A. 删除判断Err值的判断,直接返回ROWCOUNTB. 添加变量Count,在SET Err=ERROR后添加SET Count=ROWCOUNTC. 添加变量Count,在SET Err=ERROR前添加SET Count=ROWCOUNTD. 添加变量Count,将SET Err=ERROR改为SET Count=ROWCOUNT,Err=ERROR正确答案:(D) 分析:ROWCOUNT是记录影响的行数的全局变量。每次执行SQL语句都回重置该值,所以必须先声明局部变量Count,在执行UPDATE后将ROWCOUNT记录在Count中,ROWCOUNT和ERROR必须同时记录下来,否则分成两句后会发生改变。所以使用语句:SET Count=ROWCOUNT,Err=ERROR4 在一个数据库系统中,有一张数据表Employee记录所有的员工信息,其中有DepartmentID列表明员工所在的部门,现在要求每个经理只能看到自己部门的员工信息,应当如何实现?A. 使用GRANT,REVOKE,DENY语句分配给每个经理访问权限B. 将每个经理添加到db_datareader数据库角色C. 创建表和视图并在Employee表上使用行级别的安全要求D. 使用SQL企业服务器分配Employee表的权限正确答案:(C)分析:使用WHERE子句,视图可以限制行数。可以给每个部门都创建一个视图。每个部门经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论