Tôi đã cố gắng tìm ra lý do tại sao SQL Server có sơ đồ db_owner
và vai trò db_owner
? Điều này rất khó hiểu. Tôi đã tìm kiếm câu trả lời và cho đến nay đây là cách hiểu biết của tôi:Vai trò, lược đồ SQL Server, người dùng
- Tất cả các bảng và đối tượng (chẳng hạn như ràng buộc, vv) thuộc về một lược đồ.
DBO
là giản đồ mặc định. - Người dùng có thể được cấp quyền chỉnh sửa từng đối tượng hoặc giản đồ. Sự cho phép trên lược đồ mở rộng sự cho phép đối với tất cả các đối tượng trong lược đồ đó. Vì vậy, bạn không phải cấp quyền cho từng đối tượng riêng lẻ.
- Một nhóm vai trò cùng nhau cho thuận tiện.
Nếu điều này không chính xác, hãy cho tôi biết. Nhưng tôi nghĩ cho đến nay rất tốt. Bây giờ, câu hỏi của tôi là:
- Lược đồ
db_owner
chính xác như trong hộp thoại "Người dùng cơ sở dữ liệu" của SQL Server Management Studio? Và trên cùng một hộp thoại, bạn xác định "Lược đồ mặc định" làdbo
. Tại sao hai người không giống nhau? Nếu theo mặc định, SQL Server sử dụngdbo
để tạo tất cả các đối tượng theo, sử dụng nào làdb_owner
? - Tại sao người dùng muốn sở hữu một giản đồ? Bạn đã gán quyền/vai trò rồi. Sở hữu gì
db_accessadmin
cung cấp cho bạn? - Bạn có thể cho ví dụ về thời điểm bạn tạo các đối tượng theo sơ đồ
db_owner
và lược đồdb_accessadmin
không? Nói cách khác, bất cứ ai sử dụng hợp pháp những lược đồ đó?
Đồng ý. Thật là vô lý khi tạo ra hai loại đối tượng khác nhau (một lược đồ và vai trò) có cùng tên. – LarryBud