SQL Server 2005 用户权限设置

我现在在一台数据库服务器上,建立了两个数据库,并给两个数据库,设置了不同的用户名和密码,现在呢,这两个用户名只能访问相对应的数据库,但可以看到这台服务器上所有数据库名,所以现在我想设置成,相对的用户名只能看到相对应的数据名,有点类似,服务器,域管理!
请各位帮帮我
我现在是管理员,用户登陆服务器,都可以看到我服务器上的数据库,我现在要设置成,用户只能看到自己的数据库不能看到别的数据,谢谢,各位

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
至于你说。要让不同的登录名看见他自己应该看见的表。其他的表看不见。这个不可能的。但是对于其他的表他根本没有访问权的。你连接的是同一个实例名。所有的表都在里面的。所以都可以看得见,要是别人来连接你的数据库。那就只要给予权限就行了的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-29
首先
用windows
身份验证

sql
server
身份验证的
sa
用户名
登陆

然后依次进入
安全性->登陆名

选择您新建的用户名
右键
属性->服务器角色->选中
sysadmin
直接把系统权限给他得了
第2个回答  2009-05-22
USE master

GO

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

GO

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

GO

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

GO

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

GO
第3个回答  2020-04-01
建库,建立连接用户,建立组,建立用户,赋权限
CREATE
DATABASE
testing
go
USE
testing
GO
EXEC
sp_addlogin
'username1','pwd1','testing'
EXEC
sp_addgroup
'data_watcher'
EXEC
sp_adduser
'username1','username1','data_watcher'
GO
GRANT
SELECT
TO
data_watcher
go
CREATE
TABLE
t1(IDS
INT,Desp
NVARCHAR(20))
GO
INSERT
INTO
t1(ids,desp)
VALUES(1,'desp1')
然后换登陆用户进来,只能查,不能删改了。
不过这个权限还是大,可以访问其他库,建议只添加一个库的访问权限。
第4个回答  2009-05-22
连接时,服务器名写对方的数据库名字嘛~~~
相似回答