Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> SQL Server

ค้นหา Login ใน SQL Server

มีคำสั่งใน SQL Server ที่คืนค่าบัญชี Login ทั้งหมดและข้อมูลเกี่ยวกับพวกเขาหรือไม่? ใน SQL Server มีตารางแคตตาล็อกเสมือน (VIEW หรือตารางระบบ) ชื่อ sys.sql_logins คุณสามารถรันคำสั่งด้านบนและผลลัพธ์จะคืนค่า Login ทั้งหมดที่สร้างใน SQL Server พร้อมข้อมูลเกี่ยวกับพวกเขา

เพื่อดึงบัญชี Login ทั้งหมดใน SQL Server ให้รันคำสั่งต่อไปนี้:

SELECT *
FROM master.sys.sql_logins;

VIEW sys.sql_logins ประกอบด้วยคอลัมน์ต่อไปนี้:

คอลัมน์คำอธิบาย
nameนี่คือ ten_dangnhap ที่ระบุในคำสั่ง CREATE LOGIN
principal_idค่าตัวเลข ID
sidค่าเฉพาะที่ระบุในคำสั่ง CREATE LOGIN
typeประเภท Principal: S=SQL User, U=Windows User, G=Windows Group, A=Application Role, R=Database Role, C=Certificate Mapped, K=Asymmetric Key Mapped
type_descคำอธิบายประเภท: SQL_USER, WINDOWS_USER, WINDOWS_GROUP, APPLICATION_ROLE, DATABASE_ROLE, CERTIFICATE_MAPPED_USER, ASSYMETRIC_KEY_MAPPED_USER
is_disabled0 หรือ 1
create_dateวันที่/เวลาสร้าง Login ด้วย CREATE LOGIN
modify_dateวันที่/เวลาแก้ไขล่าสุดด้วย ALTER LOGIN
default_database_nameฐานข้อมูลเริ่มต้นใน CREATE LOGIN หรือ ALTER LOGIN
default_language_nameภาษาเริ่มต้นใน CREATE LOGIN หรือ ALTER LOGIN
credential_idID ใบรับรองที่ใช้ใน CREATE LOGIN หรือ ALTER LOGIN
is_policy_checked0 หรือ 1 ระบุใน CREATE LOGIN หรือ ALTER LOGIN
is_expiration_checked0 หรือ 1 ระบุใน CREATE LOGIN หรือ ALTER LOGIN
password_hashค่าแฮชของรหัสผ่าน

ความเข้ากันได้ในเวอร์ชันเก่า

ใน SQL Server เวอร์ชันเก่า สามารถดึงข้อมูล Login ทั้งหมดได้โดยใช้ตารางระบบ SQL Server 2000 คือ sys.syslogins ด้วยคำสั่งด้านล่าง:

SELECT *
FROM master.sys.syslogins;

ตารางระบบ sys.syslogins (SQL Server 2000) มีคอลัมน์ดังต่อไปนี้...