日期:2014-05-18  浏览次数:20568 次

sql server数据库授权问题
我通过以下命令创建了一个登录名,并授权
SQL code

exec sp_addlogin 'a','123','DbName'
create user [a] for login [a] with default_schema=[dbo]
exec sp_addrolemember 'db_owner','a'


但是
无法通过
SQL code
select filename from master.dbo.sysdatabases where name='DbName'
来查询数据库文件名,查询结果是null,我知道这是权限的问题,没有对master的足够权限,我想在当前数据库里可以操作master里的存储过程等对象,只能额外授权master的db_owner权限吗?

------解决方案--------------------
用GRANT授权,详细查看一下练级丛书

------解决方案--------------------
映射到多个数据库是要在不同的数据库的安全里面创建user
SQL code
USE [master]
GO
CREATE USER [xa] FOR LOGIN [a]