sql server的用戶權限分配很重要哦,如果你想管理某些服務對某些表的讀寫權限,就可以使用以下sql啦
--創建數據庫
create database test8
--創建登錄名
create login tianxftest1 with password='abcd1234',default_database = test7
EXEC sp_addlogin 'tianxftest15','123456','test7'
--用上面的登錄名創建對應數據庫用戶
create user tianxftest1 for login tianxftest1 with default_schema=dbo
EXEC sp_adduser 'newlogin'
--創建角色
EXEC sp_addrole 'Testrole'
--一句話總結上面三步
EXEC sp_adduser 'newlogin','newuser','newrole'
--給數據庫用戶設置角色
exec sp_addrolemember 'db_datareader', 'tianxftest1'
--解除數據庫用戶的角色之間的關聯
exec sp_droprolemember 'db_datareader','tianxftest1'
--設置登錄用戶角色可以訪問多個數據庫(可以指定不是當前數據庫的其他數據庫)
use TestReport--首先切換到要指定的數據庫
create user tianxftest1 for login tianxftest1 with default_schema=dbo
--設置角色newrole對A表有查詢和修改權限
GRANT SELECT,UPDATE ON lco_role TO tianxftest6
USE TestReport
--獲取所有用戶名
SELECT * FROM Sysusers
islogin='1' :表示帳戶
islogin='0' :表示角色
status='2' :表示用戶帳戶
status='0' :表示糸統帳戶
--刪除某個數據庫用戶(不刪除登錄名)
EXEC sp_dropuser 'tianxftest1'
drop user tianxftest16
--刪除某個登錄名
EXEC sp_droplogin 'tianxftest19'
drop login test
--刪除角色newrole對A表的查詢和修改權限(回收)
DENY(revoke) SELECT,UPDATE ON employees TO newrole
--查詢服務器角色
EXEC SP_HELPSRVROLE
--查看服務器角色及其對應用戶
EXEC SP_HELPSRVROLEMEMBER
--查詢數據庫角色
EXEC SP_HELPROLE
--查看數據庫角色及其對應用戶
EXEC SP_HELPROLEMEMBER
--查詢所有數據庫名稱
SELECT Name FROM SysDatabases ORDER BY Name
--禁用登陸帳戶
alter login dba DISABLE
--啟用登陸帳戶
alter login dba ENABLE
--登陸帳戶改名
alter login dba with name=dba_tom
--登陸帳戶改密碼:
alter login dba with password='aabb@ccdd'
--數據庫用戶改名:
alter user dba with name=dba_tom
--更改數據庫用戶 defult_schema (默認架構):
alter user dba with default_schema=sales
--刪除數據庫用戶:
drop user dba
--刪除 SQL Server登陸帳戶:
drop login dba