Nói một cách chính xác, sự khác biệt giữa Cơ sở dữ liệu và Lược đồ là không tồn tại trong MySql.
Tuy nhiên, đây không phải là trường hợp trong các công cụ cơ sở dữ liệu khác như SQL Server. Trong máy chủ SQL :,
Mỗi bảng thuộc về một nhóm các đối tượng trong cơ sở dữ liệu được gọi là lược đồ cơ sở dữ liệu . Đó là một vùng chứa hoặc không gian tên ( Truy vấn Microsoft SQL Server 2012 )
Theo mặc định, tất cả các bảng trong SQL Server đều thuộc về một lược đồ mặc định được gọi là dbo . Khi bạn truy vấn một bảng chưa được phân bổ cho bất kỳ lược đồ cụ thể nào, bạn có thể làm như sau:
SELECT *
FROM your_table
tương đương với:
SELECT *
FROM dbo.your_table
Bây giờ, máy chủ SQL cho phép tạo các lược đồ khác nhau, cho phép bạn nhóm các bảng có cùng mục đích. Điều đó giúp tổ chức cơ sở dữ liệu.
Ví dụ, bạn có thể tạo một lược đồ gọi là bán hàng , với các bảng như hoá đơn , creditorders (và bất kỳ khác có liên quan với doanh số), và một schema gọi là tra cứu , với các bảng như nước , tiền tệ , subscriptiontypes (và bất kỳ bảng khác sử dụng như nhìn lên bảng).
Các bảng được phân bổ cho một miền cụ thể được hiển thị trong SQL Server Studio Manager với tên lược đồ được thêm vào trước tên bảng (giống hệt như các bảng thuộc về lược đồ dbo mặc định ).
Có các lược đồ đặc biệt trong SQL Server. Để trích dẫn cùng một cuốn sách:
Có một số lược đồ cơ sở dữ liệu được tích hợp sẵn và chúng không thể bị loại bỏ hoặc thay đổi:
1) dbo , lược đồ mặc định.
2) khách chứa các đối tượng có sẵn cho người dùng khách ("người dùng khách" là một vai trò đặc biệt trong biệt ngữ SQL Server, với một số quyền mặc định và bị hạn chế cao). Hiếm khi được sử dụng.
3) INFORMATION_SCHEMA , được sử dụng bởi Chế độ xem giản đồ thông tin
4) hệ thống , dành riêng cho SQL Server sử dụng nội bộ
Các lược đồ không chỉ để phân nhóm. Thực sự có thể cấp các quyền khác nhau cho mỗi lược đồ cho những người dùng khác nhau, như MSDN đã mô tả .
Làm theo cách này, tra cứu lược đồ được đề cập ở trên có thể được cung cấp cho bất kỳ người dùng tiêu chuẩn nào trong cơ sở dữ liệu (ví dụ: SELECT
chỉ quyền), trong khi một bảng có tên là nhà cung cấpbankaccountdetails có thể được phân bổ trong một lược đồ khác được gọi là tài chính và chỉ cấp quyền truy cập cho người dùng trong nhóm accounts
(chỉ là một ví dụ, bạn sẽ có được ý tưởng).
Cuối cùng, và trích dẫn lại cùng một cuốn sách:
Nó không giống với Lược đồ cơ sở dữ liệu và Lược đồ bảng . Cái trước là không gian tên của một bảng, trong khi cái sau đề cập đến định nghĩa bảng