SQL语句功能权限Word格式.docx

上传人:b****5 文档编号:16070893 上传时间:2022-11-18 格式:DOCX 页数:14 大小:22.08KB
下载 相关 举报
SQL语句功能权限Word格式.docx_第1页
第1页 / 共14页
SQL语句功能权限Word格式.docx_第2页
第2页 / 共14页
SQL语句功能权限Word格式.docx_第3页
第3页 / 共14页
SQL语句功能权限Word格式.docx_第4页
第4页 / 共14页
SQL语句功能权限Word格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

SQL语句功能权限Word格式.docx

《SQL语句功能权限Word格式.docx》由会员分享,可在线阅读,更多相关《SQL语句功能权限Word格式.docx(14页珍藏版)》请在冰豆网上搜索。

SQL语句功能权限Word格式.docx

?

例3-12创建把讲授c5课程的教师的工资增加100元。

/*t表(教师基本情况表)的结构为t(tno,tn,sex,age,prof,sal,dept)分别表示教师的编号,姓名,性别,年龄,职称,工资,系别。

tc表(教师授课表)的结构为tc(tno,cno)分别表示教师的编号,课程编号。

updatetsetsal=sal+100

wheretnoin

(selectt.tnofromt,tc

wheret.tno=tc.tnoando=c5)

/*通过连接查询找到讲授c5课程的教师编号。

下面是删除一行记录的例子。

例3-14删除张益琳教师的记录。

deletefromtwheretn=’张益琳’

例3-16删除李明同学选课的记录。

deletefromscwheresno=

(selectsnofromswheresn=’李明’)

三、数据控制语言

数据控制语言(dcl)是用来设置或更改数据库用户或角色权限的语句,包括grant,

deny,revoke等语句。

在默认状态下,只有sysadmin,dbcreator,db_owner或

db_securityadmin等人员才有权力执行数据控制语言。

3.1语句权限与角色的授予

sql语言使用grant语句为用户授予语句权限的语法格式为:

grant&

lt;

语句权限&

gt;

|&

角色&

[,&

+…

to&

用户名&

|public[,&

[withadminoption]

其语义为:

将指定的语句权限授予指定的用户或角色。

其中:

(1)pulbic代表数据库中的全部用户;

(2)withadminoption为可选项,指定后则允许被授权的用户将指定的系统特权或角色再授予其他用户或角色。

例3-17给用户mary和john以及windowsnt组corporate\bobj授予多个语

句权限。

grantcreatedatabase,createtable

tomary,john,[corporate\bobj]

例3-18为用户zhangyilin授予createtable的语句权限。

grantcreatetable

tozhangyilin

同语句权限的授予类似,sql语言使用grant语句为用户授予对象权限,其语法格

式为:

grantall|&

对象权限&

[(列名[,列名+…)+*,&

+…on&

对象名&

将指定的操作对象的对象权限授予指定的用户或角色。

(1)all代表所有的对象权限。

(2)列名用于指定要授权的数据库对象的一列或多列。

如果不指定列名,被授权的用户将在数据库对象的所有列上均拥有指定的特权。

实际上,只有当授予insert、update权限时才需指定列名。

(3)on子句用于指定要授予对象权限的数据库对象名,可以是基本表名、视图名等。

(4)withadminoption为可选项,指定后则允许被授权的用户将权限再授予其他用户或角色。

例3-19在权限层次中授予对象权限。

首先,给所有用户授予select权限,然后,

将特定的权限授予用户mary,john和tom。

grantselect

ons

topublic

grantinsert,update,delete

ons

tomary,john,tom

例3-20将查询t表和修改教师职称的权限授予user3,并允许将此权限授予其他

用户。

grantselect,update(prof)

onttouser3

withadminoption

上例中,user3具有此对象权限,并可使用grant命令给其他用户授权,如下例,

user3将此权限授予user4:

ont

touser4

数据库管理员可以使用revoke语句收回语句权限,其语法格式为:

revoke&

from&

例:

收回用户zhangyilin所拥有的createtable的语句权限。

revokecreatetable

fromzhangyilin

所有授予出去的权力在必要时都可以由数据库管理员和授权者收回,收回对象权限仍然使用revoke语句,其语法格式为:

例3-21收回用户user1对c表的查询权限。

revokeselect

onc

fromuser1

例3-22收回用户user3查询t表和修改教师职称的权限。

revokeselect,update(prof)

fromuser3

在上例中,user3将对t表的权限授予了user4,在收回user3对t表的权限的同

时,系统会自动收回user4对t表的权限。

例3-23首先从public角色中收回select权限,然后,收回用户mary,john和

tom的特定权限。

usepubs

revokeselectonsfrompublic

revokeinsert,update,delete

frommary,john,tom

deny语句用于拒绝给当前数据库内的用户或者角色授予权限,并防止用户或角色通

过其组或角色成员继承权限。

否定语句权限的语法形式为:

denyall|&

+…

否定对象权限的语法形式为:

例3-24首先给public角色授予select权限,然后,拒绝用户mary,john和tom

的特定权限。

denyselect,insert,update,delete

tomary,john,tom

四、系统存储过程

系统存储过程的部分示例如下:

sp_addtype:

用于定义一个用户定义数据类型;

sp_configure:

用于管理服务器配置选项设置;

xp_sendmail:

用于发送电子邮件或寻呼信息;

sp_stored_procedures:

用于返回当前数据库中的存储过程的清单;

sp_help:

用于显示参数清单和其数据类型;

sp_depends:

用于显示存储过程依据的对象或者依据存储过程的对象;

sp_helptext:

用于显示存储过程的定义文本;

sp_rename:

用于修改当前数据库中用户对象的名称。

五、变量

变量是一种语言中必不可少的组成部分。

transact-sql语言中有两种形式的变量,一

种是用户自己定义的局部变量,另外一种是系统提供的全局变量。

1.局部变量

局部变量是一个能够拥有特定数据类型的对象,它的作用范围仅限制在程序内部。

局部变量被引用时要在其名称前加上标志“@”,而且必须先用declare命令定义后才可以使用。

?

定义局部变量的语法形式如下:

declaer,@local_variabledata_type-*…n+

其中,参数@local_variable用于指定局部变量的名称,变量名必须以符号@开头,

并且局部变量名必须符合sqlserver的命名规则。

参数data_type用于设置局部变量

的数据类型及其大小。

data_type可以是任何由系统提供的或用户定义的数据类型。

但是,局部变量不能是text,ntext或image数据类型。

使用declare命令声明并创建局部变量之后,会将其初始值设为null,如果想要设

定局部变量的值,必须使用select命令或者set命令。

其语法形式为:

set{@local_variable=expression}或者select{@local_variable=expression}

[,...n]

其中,参数@local_variable是给其赋值并声明的局部变量,参数expression是任何有

效的sqlserver表达式。

例3-26创建一个@myvar变量,然后将一个字符串值放在变量中,最后输出

@myvar变量的值。

declare@my

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

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

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