SQL Server 2005 用户权限设置

来源:百度知道 编辑:UC知道 时间:2024/05/26 13:10:08
我现在在一台数据库服务器上,建立了两个数据库,并给两个数据库,设置了不同的用户名和密码,现在呢,这两个用户名只能访问相对应的数据库,但可以看到这台服务器上所有数据库名,所以现在我想设置成,相对的用户名只能看到相对应的数据名,有点类似,服务器,域管理!
请各位帮帮我
我现在是管理员,用户登陆服务器,都可以看到我服务器上的数据库,我现在要设置成,用户只能看到自己的数据库不能看到别的数据,谢谢,各位

create 权限[on 表名] to 数据库用户
比如说:
use sutDB
go
--为zhangsanDBUser分配对表studInfo的select、insert、update权限
create select,insert,update on studInfo to zhangsanDBuser
--为lisiDBUser 分配建表的权限
create create table to lisiDBUser
至于你说。要让不同的登录名看见他自己应该看见的表。其他的表看不见。这个不可能的。但是对于其他的表他根本没有访问权的。你连接的是同一个实例名。所有的表都在里面的。所以都可以看得见,要是别人来连接你的数据库。那就只要给予权限就行了的。

USE master

GO

CREATE LOGIN [这里是你的登录名] WITH PASSWORD = '这里是你的密码'

GO

USE [这里是你要设置的数据库]

GO

CREATE USER [这里是你的用户名] FOR LOGIN [这里是你的登录名]

GO

EXEC SP_ADDROLEMEMBER 'db_owner','[这里是你的用户名]'

GO

连接时,服务器名写对方的数据库名字嘛~~~