首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
数据库
> 详细
sqlserver使用户只能在某个架构下建立表和存储过程
时间:
2015-07-11 14:57:10
阅读:
254
评论:
0
收藏:
0
[点我收藏+]
标签:
1、首先,建立一个用户之后,默认的架构是dbo,默认的角色是public。这种情况下,这个用户将看不到dbo以及其他架构下的对象。除非单独进行授权。
2、新建一个架构test,然后使得这个架构的所有者为上面建立的用户,并且设置这个用户的默认架构为test。那么,这个新建的用户将拥有test架构对象的所有权限。但此时这个用户还没有建立表和存储过程的权限。
3、授予这个新建的用户表和存储过程的权限:
use testdb;
GRANT CREATE TABLE to abc;
GRANT CREATE PROCEDURE to abc;
这样,此用户将拥有新建表和用户的权限。但是由于此用户只有test架构的权限,因此只能建立test架构的表和存储过程。由于此用户的默认架构为test,那么它建立表的时候不写架构建出来的还是属于test架构的。
4、如果希望用户能建立别的架构的对象,那么需要授予这个用户对新的架构的alter权限即可。如果希望此用户可以看到新的架构里面的对象,那么授予此用户新的架构的查看定义权限即可。
5、上面说的都是利用语句来建立的方法。注意利用sqlserver客户端工具建立表和存储过程的时候会有一些区别。通过图形界面建表,会出一个错误提示,表示只有管理员和数据库所有者才有权限执行此操作。这个只是由于要把一些临时数据存到系统表里,可以忽略,这样就只是生成建立表的语句并执行,这些操作是可以的,没什么问题。因此那个错误是可以忽略的。
?
sqlserver使用户只能在某个架构下建立表和存储过程
标签:
原文地址:http://www.cnblogs.com/firtree/p/sqlserver.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
数据库进阶
2021-07-29
在 Oracle 数据库中执行 SQL 语句遇到特殊字符的转义方式
2021-07-28
Windows Logstash同步 Sqlserver 到Elasticsearch
2021-07-26
mysql数据库(11):恢复数据
2021-07-26
mysql数据库(9):常用查询的例子
2021-07-26
SQLAlchemy 多对多
2021-07-26
ClickHouse的JDBC连接
2021-07-26
Apache HBase 1.7.1 发布,分布式数据库
2021-07-26
数据库常用架构和同步工作原理
2021-07-26
MySQL数据库设计规范(仅供参考)
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!