sql问题,求高手解答

1.GRANTSELECTONStudent,CourseTOU2,U3;消息102,级别15,状态1,第2行','附近有语法错误。2.CREATEROLER1;GRAN... 1.
GRANT SELECT
ON Student,Course
TO U2,U3;

消息 102,级别 15,状态 1,第 2 行
',' 附近有语法错误。

2.
CREATE ROLE R1;

GRANT SELECT ,UPDATE,INSERT
ON Student
TO R1;

GRANT R1
TO U1;

消息 102,级别 15,状态 1,第 6 行
'R1' 附近有语法错误。

3.
CREATE USER U8;

消息 15007,级别 16,状态 1,第 1 行
'U8' 是无效登录名或您没有相应的权限。
注:U8 是一个不存在的用户

为什么胡出现这些状况??求高手解答。。。
PS:我用的是超级管理员用户登录的。。
展开
 我来答
越错越开心
2012-04-11 · 超过39用户采纳过TA的回答
知道小有建树答主
回答量:70
采纳率:0%
帮助的人:101万
展开全部
1. on后面应该只跟一个对象,就是说你的student和course分两步授权
2.GRANT R1 TO U1; grant后面只能跟具体权限,也就是这几种:SELECT、INSERT、DELETE、REFENENCES 或 UPDATE. 你这里的R1显然不符合要求
或者将你的GRANT R1 TO U1改成EXEC sp_addrolemember R1, U1;
3.根据你的具体需求,可能有各种原因,推荐参考微软的MSDN

参考资料: http://msdn.microsoft.com/zh-cn/library/ms173463.aspx

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tj_angela
2012-04-11 · TA获得超过7530个赞
知道大有可为答主
回答量:6797
采纳率:75%
帮助的人:2584万
展开全部
1.GRANT SELECT ON Student,Course TO U2;
GRANT SELECT ON Student,Course TO U3;

2.CREATE ROLE R1;
GRANT SELECT,UPDATE,INSERT
ON Student TO R1;
EXEC sp_addrolemember R1, U1;

3.
创建登录名:
exec sp_addlogin 登录名,密码
创建用户名:
exec sp_adduser 登录名,用户名--U8
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式