ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:20.70KB ,
资源ID:6709620      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6709620.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据控制语言DCLData Control Language 2.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据控制语言DCLData Control Language 2.docx

1、数据控制语言DCLData Control Language 2数据控制语言(DCL,Data Control Language) 2SQL Server 2000中的SQL语言是Transact-SQL语言 。Transact-SQL语言主要组成部分有一下几种:1.数据定义语言(DDL,Data Definition Language)2.数据操纵语言(DML,Data Manipularion Language)3.数据控制语言(DCL,Data Control Language)4.系统存储过程(System Stored Procedure)5.一些附加的语言元素数据控制语言(DCL)

2、数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、DENY、REVOKE等语句,在默认状态下,只 有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。GRANT语句 GRANT语句是授权语句,它可以把语句权限或者对象权限授予给其他用户和角色。授予语句权限的语法形式为:GRANT ALL | statement,.n TO security_account ,.n 授予对象权限的语法形式为:GRANT ALL PRIVILEGES | permission ,.n ( colum

3、n ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO security_account ,.n WITH GRANT OPTION AS group | role 2、DENY语句DENY语句用于拒绝给当前数据库内的用户或者角色授予权限,并防止用户或角色通过其组或角色成员继承权限。否定语句权限的语法形式为:DENY ALL | statement ,.n TO security_accoun

4、t ,.n 否定对象权限的语法形式为: DENY ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO security_account ,.n CASCADE 3 REVOKE语句REVOKE语句是与GRANT语句相反的语句,它能够将以前在当前数据库内的用户或者角色上授予或拒绝的权限删除,但是该语句并不影响用户或

5、者角色从其他角色中作为成员继承过来的权限。收回语句权限的语法形式为:REVOKE ALL | statement ,.n FROM security_account ,.n 收回对象权限的语法形式为: REVOKE GRANT OPTION FOR ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO | FROM

6、 security_account ,.n CASCADE AS group | role 系统存储过程系统存储过程是SQL Server系统创建的存储过程,它的目的在于能够方便地从系统表中查询信息,或者完成与更新数据库表相关的管理任务或其它的系统管理任务。系统存储过程 可以在任意一个数据库中执行。系统存储过程创建并存放于系统数据库master中,并且名称以sp_或者xp_开头。系统存储过程的部分示例如下: sp_addtype:用于定义一个用户定义数据类型。sp_configure:用于管理服务器配置选项设置。xp_sendmail:用于发送电子邮件或寻呼信息。sp_stored_proce

7、dures:用于返回当前数据库中的存储过程的清单。sp_help:用于显示参数清单和其数据类型。sp_depends:用于显示存储过程依据的对象或者依据存储过程的对象。sp_helptext:用于显示存储过程的定义文本。sp_rename:用于修改当前数据库中用户对象的名称。其它语言元素注释 注释是程序代码中不执行的文本字符串(也称为注解)。在SQL Server中,可以使用两种类型的注释字符:一种是ANSI标准的注释符“-”,它用于单行注释;另一种是与C语言相同的程序注释符号,即“/* */”。 变量变量是一种语言中必不可少的组成部分。Transact-SQL语言中有两种形式的变量,一种是用

8、户自己定义的局部变量,另外一种是系统提供的全局变量。局部变量局部变量是一个能够拥有特定数据类型的对象,它的作用范围仅限制在程序内部。局部变量可以作为计数器来计算循环执行的次 数,或是控制循环执行的次数。另外,利用局部变量还可以保存数据值,以供控制流语句测试以及保存由存储过程返回的数据值等。局部变量被引用时要在其名称前 加上标志“”,而且必须先用DECLARE命令定义后才可以使用。 全局变量全局变量是SQL Server系统内部使用的变量,其作用范围并不仅仅局限于某一程序,而是任何程序均可以随时调用。全局变量通常存储一些SQL Server的配置设定值和统计数据。用户可以在程序中用全局变量来测试

9、系统的设定值或者是Transact-SQL命令执行后的状态值。 使用全局变量时应该注意以下几点: 全局变量不是由用户的程序定义的,它们是在服务器级定义的。用户只能使用预先定义的全局变量。引用全局变量时,必须以标记符“”开头。局部变量的名称不能与全局变量的名称相同,否则会在应用程序中出现不可预测的结果。 运算符 运算符是一些符号,它们能够用来执行算术运算、字符串连接、赋值以及在字段、常量和变量之间进行比较。在SQL Server 2000中,运算符主要有以下六大类:算术运算符、赋值运算符、位运算符、比较运算符、逻辑运算符以及字符串串联运算符算术运算符算术运算符可以在两个表达式上执行数学运算,这两

10、个表达式可以是数字数据类型分类的任何数据类型。算术运算符包括加(+)、减()、乘(*)、除(/)和取模(%)。 赋值运算符Transact-SQL 中只有一个赋值运算符,即等号(=)。赋值运算符使我们能够将数据值指派给特定的对象。另外,还可以使用赋值运算符在列标题和为列定义值的表达式之间建立关系。位运算符位运算符使我们能够在整型数据或者二进制数据(image 数据类型除外)之间执行位操作。此外,在位运算符左右两侧的操作数不能同时是二进制数据。比较运算符比较运算符用于比较两个表达式的大小或是否相同,其比较的结果是布尔值,即TRUE(表示表达式的结果为真)、FALSE(表示表达式的结果为假)以及U

11、NKNOWN。除了 text、ntext 或 image 数据类型的表达式外,比较运算符可以用于所有的表达式。 SQL Server 2000中的SQL语言是Transact-SQL语言 。Transact-SQL语言主要组成部分有一下几种:1.数据定义语言(DDL,Data Definition Language)2.数据操纵语言(DML,Data Manipularion Language)3.数据控制语言(DCL,Data Control Language)4.系统存储过程(System Stored Procedure)5.一些附加的语言元素数据控制语言(DCL)数据控制语言(DCL)

12、是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、DENY、REVOKE等语句,在默认状态下,只 有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。GRANT语句 GRANT语句是授权语句,它可以把语句权限或者对象权限授予给其他用户和角色。授予语句权限的语法形式为:GRANT ALL | statement,.n TO security_account ,.n 授予对象权限的语法形式为:GRANT ALL PRIVILEGES | permission ,.n ( column ,.n ) ON

13、table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO security_account ,.n WITH GRANT OPTION AS group | role 2、DENY语句DENY语句用于拒绝给当前数据库内的用户或者角色授予权限,并防止用户或角色通过其组或角色成员继承权限。否定语句权限的语法形式为:DENY ALL | statement ,.n TO security_account ,.n 否定对象权

14、限的语法形式为: DENY ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO security_account ,.n CASCADE 3 REVOKE语句REVOKE语句是与GRANT语句相反的语句,它能够将以前在当前数据库内的用户或者角色上授予或拒绝的权限删除,但是该语句并不影响用户或者角色从其他角色中作为

15、成员继承过来的权限。收回语句权限的语法形式为:REVOKE ALL | statement ,.n FROM security_account ,.n 收回对象权限的语法形式为: REVOKE GRANT OPTION FOR ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure | ON user_defined_function TO | FROM security_a

16、ccount ,.n CASCADE AS group | role 系统存储过程系统存储过程是SQL Server系统创建的存储过程,它的目的在于能够方便地从系统表中查询信息,或者完成与更新数据库表相关的管理任务或其它的系统管理任务。系统存储过程 可以在任意一个数据库中执行。系统存储过程创建并存放于系统数据库master中,并且名称以sp_或者xp_开头。系统存储过程的部分示例如下: sp_addtype:用于定义一个用户定义数据类型。sp_configure:用于管理服务器配置选项设置。xp_sendmail:用于发送电子邮件或寻呼信息。sp_stored_procedures:用于返回当

17、前数据库中的存储过程的清单。sp_help:用于显示参数清单和其数据类型。sp_depends:用于显示存储过程依据的对象或者依据存储过程的对象。sp_helptext:用于显示存储过程的定义文本。sp_rename:用于修改当前数据库中用户对象的名称。其它语言元素注释 注释是程序代码中不执行的文本字符串(也称为注解)。在SQL Server中,可以使用两种类型的注释字符:一种是ANSI标准的注释符“-”,它用于单行注释;另一种是与C语言相同的程序注释符号,即“/* */”。 变量变量是一种语言中必不可少的组成部分。Transact-SQL语言中有两种形式的变量,一种是用户自己定义的局部变量,

18、另外一种是系统提供的全局变量。局部变量局部变量是一个能够拥有特定数据类型的对象,它的作用范围仅限制在程序内部。局部变量可以作为计数器来计算循环执行的次 数,或是控制循环执行的次数。另外,利用局部变量还可以保存数据值,以供控制流语句测试以及保存由存储过程返回的数据值等。局部变量被引用时要在其名称前 加上标志“”,而且必须先用DECLARE命令定义后才可以使用。 全局变量全局变量是SQL Server系统内部使用的变量,其作用范围并不仅仅局限于某一程序,而是任何程序均可以随时调用。全局变量通常存储一些SQL Server的配置设定值和统计数据。用户可以在程序中用全局变量来测试系统的设定值或者是Tr

19、ansact-SQL命令执行后的状态值。 使用全局变量时应该注意以下几点: 全局变量不是由用户的程序定义的,它们是在服务器级定义的。用户只能使用预先定义的全局变量。引用全局变量时,必须以标记符“”开头。局部变量的名称不能与全局变量的名称相同,否则会在应用程序中出现不可预测的结果。 运算符 运算符是一些符号,它们能够用来执行算术运算、字符串连接、赋值以及在字段、常量和变量之间进行比较。在SQL Server 2000中,运算符主要有以下六大类:算术运算符、赋值运算符、位运算符、比较运算符、逻辑运算符以及字符串串联运算符算术运算符算术运算符可以在两个表达式上执行数学运算,这两个表达式可以是数字数据

20、类型分类的任何数据类型。算术运算符包括加(+)、减()、乘(*)、除(/)和取模(%)。 赋值运算符Transact-SQL 中只有一个赋值运算符,即等号(=)。赋值运算符使我们能够将数据值指派给特定的对象。另外,还可以使用赋值运算符在列标题和为列定义值的表达式之间建立关系。位运算符位运算符使我们能够在整型数据或者二进制数据(image 数据类型除外)之间执行位操作。此外,在位运算符左右两侧的操作数不能同时是二进制数据。比较运算符比较运算符用于比较两个表达式的大小或是否相同,其比较的结果是布尔值,即TRUE(表示表达式的结果为真)、FALSE(表示表达式的结果为假)以及UNKNOWN。除了 t

21、ext、ntext 或 image 数据类型的表达式外,比较运算符可以用于所有的表达式。 逻辑运算符逻辑运算符可以把多个逻辑表达式连接起来。逻辑运算符包括AND、OR和NOT等运算符。逻辑运算符和比较运算符一样,返回带有 TRUE 或 FALSE 值的布尔数据类型。字符串串联运算符字符串串联运算符允许通过加号 (+) 进行字符串串联,这个加号即被称为字符串串联运算符。例如对于语句SELECT abc+def,其结果为abcdef。运算符的优先等级从高到低如下所示 括号:();乘、除、求模运算符:*、/、%;加减运算符:+、- ;比较运算符:=、=、=、!=、!、!;位运算符:、&、|;逻辑运算

22、符:NOT;逻辑运算符:AND;逻辑运算符:OR。函数在Transact-SQL语言中,函数被用来执行一些特殊的运算以支持SQL Server的标准命令。Transact-SQL 编程语言提供了三种函数: 行集函数:行集函数可以在Transact-SQL语句中当作表引用。 聚合函数:聚合函数用于对一组值执行计算并返回一个单一的值。 标量函数:标量函数用于对传递给它的一个或者多个参数值进行处理和计算,并返回一个单一的值。 SQL Server中最常用的几种函数字符串函数字符串函数可以对二进制数据、字符串和表达式执行不同的运算,大多数字符串函数只能用于char和varchar数据类 型以及明确转换

23、成char和varchar的数据类型,少数几个字符串函数也可以用于binary和varbinary数据类型。此外,某些字符串函数还 能够处理text、ntext、image数据类型的数据。 字符串函数的分类:基本字符串函数:UPPER、LOWER、SPACE、REPLICATE、STUFF、REVERSE、LTRIM、RTRIM。字符串查找函数:CHARINDEX、PATINDEX。长度和分析函数:DATALENGTH、SUBSTRING、RIGHT。转换函数:ASCH、CHAR、STR、SOUNDEX、DIFFERENCE。 日期和时间函数日期和时间函数用于对日期和时间数据进行各种不同的处理

24、和运算,并返回一个字符串、数字值或日期和时间值。在SQL Server 2000中,日期和时间函数的类型如表2-5所示;另外,表2-6列出了日期类型的名称、缩写形式以及可接受的值。数学函数数学函数用于对数字表达式进行数学运算并返回运算结果。数学函数可以对SQL Server提供的数字数据(decimal、integer、float、real、money、smallmoney、smallint 和 tinyint)进行处理。 转换函数一般情况下,SQL Server会自动处理某些数据类型的转换。例如,如果比较 char 和 datetime 表达式、smallint 和 int 表达式、或不同长

25、度的 char 表达式,SQL Server 可以将它们自动转换,这种转换被称为隐性转换。但是,无法由SQL Server自动转换的或者是SQL Server自动转换的结果不符合预期结果的,就需要使用转换函数做显示转换。转换函数有两个:CONVERT和CAST。系统函数系统函数用于返回有关SQL Server系统、用户、数据库和数据库对象的信息。系统函数可以让用户在得到信息后,使用条件语句,根据返回的信息进行不同的操作。与其它函数一样,可以在SELECT语句的SELECT和WHERE子句以及表达式中使用系统函数。 聚合函数聚合函数可以返回整个或者几个列或者一个列的汇总数据,它常用来计算SELE

26、CT语句查询的统计值。聚合函数经常与 SELECT 语句的 GROUP BY 子句一同使用。流程控制语句流程控制语句是指那些用来控制程序执行和流程分支的命令,在SQL Server 2000中,流程控制语句主要用来控制SQL语句、语句块或者存储过程的执行流程。 IFELSE语句IFELSE语句是条件判断语句,其中,ELSE子句是可选的,最简单的IF语句没有ELSE子句部分。 IFELSE语句用来判断当某一条件成立时执行某段程序,条件不成立时执行另一段程序。SQL Server允许嵌套使用IFELSE语句,而且嵌套层数没有限制。 IFELSE语句的语法形式IF Boolean_expressio

27、n sql_statement | statement_block ELSE sql_statement | statement_block BEGINEND语句BEGINEND语句能够将多个Transact-SQL语句组合成一个语句块,并将它们视为一个单元处理。在条件语句和循环等控制流程语句中,当符合特定条件便要执行两个或者多个语句时,就需要使用BEGINEND语句,其语法形式为:BEGIN sql_statement | statement_block END CASE函数 CASE函数可以计算多个条件式,并将其中一个符合条件的结果表达式返回。CASE函数按照使用形式的不同,可以分为简单C

28、ASE函数和搜索CASE函数。 CASE函数的语法形式 CASE input_expressionWHEN when_expression THEN result_expression .n ELSE else_result_expressionEND 搜索 CASE函数的语法形式CASE WHEN Boolean_expression THEN result_expression .n ELSE else_result_expression END WHILECONTINUEBREAK语句 WHILECONTINUEBREAK语句用于设置重复执行 SQL 语句或语句块的条件。只要指定的条件为

29、真,就重复执行语句。其中,CONTINUE语句可以使程序跳过CONTINUE语句后面的语句,回到WHILE循 环的第一行命令。BREAK语句则使程序完全跳出循环,结束WHILE语句的执行。 结束WHILE语句的语法形式为:WHILE Boolean_expression sql_statement | statement_block BREAK sql_statement | statement_block CONTINUE GOTO语句 GOTO语句可以使程序直接跳到指定的标有标识符的位置处继续执行,而位于GOTO语句和标识符之间的程序将不会被执行。GOTO语句和标识符可以用在语句块、批处理和存储过程中,标识符可以为数字与字符的组合,但必须以“:”结尾。 GOTO语句的语法形式 GOTO labellabel:程序清单2-50:利用GOTO语句求出从1加到5的总和。declare sum int, count intselect sum=0, count=1label_1:select sum=sum+countselect count=count+1if count=5goto label_1select count sumWAITFOR语句WAITFOR语句用于暂时停止执行SQL语句、语句块或者存储过程等,直到所设定的时间已过或者所设定的时间已到才继续执行。WA

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1