ตรวจสอบ User ก่อนว่า Instane มี User นี้ หรือป่าว ? ถ้าไม่ก็สร้าง
IF NOT EXISTS (SELECT * FROM sys.server_principals WHERE name = N'intest') CREATE LOGIN [intest] WITH PASSWORD = 0x0100E1BCBAF63A22EDDC4FCEE2551E32A45C51363F0A9AD4D95F HASHED, SID = 0x1B16028920ADF147BA9744E7CAE21EBF, DEFAULT_DATABASE = [master], CHECK_POLICY = OFF, CHECK_EXPIRATION = OFF GO IF NOT EXISTS (SELECT * FROM sys.server_principals WHERE name = N'bananaa') CREATE LOGIN [bananaa] WITH PASSWORD = 0x01004D0ACBE8F6923518FBFCE9832985129E2ECB2A2B23DA99C3 HASHED, SID = 0x5AAEDC9C5626F345AD2052EE739879FE, DEFAULT_DATABASE = [master], CHECK_POLICY = OFF, CHECK_EXPIRATION = OFF GO
จัดการ user ของ DB + สิทธิ
- จัดการ user ของ DB
- เอาสิทธิ์การเป็นเจ้าของ Schema จาก ไปให้ dbo
ALTER AUTHORIZATION ON SCHEMA::INVEST TO dbo;
- ลบ User ของ DB
DROP USER [intest]; DROP USER [bananaa];
- สร้าง User ใหม่
CREATE USER bananaa FOR LOGIN bonanza WITH DEFAULT_SCHEMA = INVEST; CREATE USER intest FOR LOGIN invest WITH DEFAULT_SCHEMA = INVEST; Go
- ใส่ Role ให้เป็น DB OWNER
EXEC sp_addrolemember 'db_owner', 'bananaa' Go EXEC sp_addrolemember 'db_owner', 'intest' Go
- คืนสิทธิ์ให้ไป
ALTER AUTHORIZATION ON SCHEMA::INVEST TO bananaa;
ปล. คำสั่งบางส่วนพวก Create user ของ InstanceGen มาจาก http://support.microsoft.com/kb/918992 ผมได้เพิ่ม Store ตาม 2 ตัวใน DB ของ AKTB มันจะมี sp_help_revlogin / sp_hexadecimal
ให้รันตัว sp_help_revlogin จะได้ SQL ตามด้านล่าง
CREATE LOGIN [intest] WITH PASSWORD = 0x0100E1BCBAF63A22EDDC4FCEE2551E32A45C51363F0A9AD4D95F HASHED, SID = 0x1B16028920ADF147BA9744E7CAE21EBF, DEFAULT_DATABASE = [master], CHECK_POLICY = OFF, CHECK_EXPIRATION = OFF
Reference
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.