Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lược đồ cơ sở dữ liệu là gì?

Theo thuật ngữ cơ sở dữ liệu, một giản đồ (phát âm là "xiên-muh" hoặc "xiên-mah") là tổ chức và cấu trúc của cơ sở dữ liệu. Cả hai lược đồ schemata có thể được sử dụng dưới dạng số nhiều.

Một lược đồ chứa các đối tượng lược đồ, có thể là bảng, cột, kiểu dữ liệu, dạng xem, thủ tục được lưu trữ, mối quan hệ, khóa chính, khóa ngoại, v.v.

Một lược đồ cơ sở dữ liệu có thể được biểu diễn dưới dạng biểu đồ trực quan, biểu đồ này cho thấy các đối tượng cơ sở dữ liệu và mối quan hệ của chúng với nhau.

Trên đây là một ví dụ đơn giản về sơ đồ lược đồ. Nó hiển thị ba bảng, cùng với kiểu dữ liệu của chúng, mối quan hệ giữa các bảng, cũng như khóa chính và khóa ngoại của chúng.

Đây là một ví dụ phức tạp hơn về lược đồ cơ sở dữ liệu:

Trong trường hợp này, sơ đồ lược đồ đã được tách thành bốn phần:

  • Dữ liệu khách hàng :Dữ liệu liên quan đến khách hàng, chẳng hạn như tên, địa chỉ của họ, v.v.
  • Doanh nghiệp :Dữ liệu cần thiết để vận hành doanh nghiệp, chẳng hạn như nhân viên, vị trí cửa hàng, chi tiết thanh toán, v.v.
  • Khoảng không quảng cáo :Thông tin chi tiết về tất cả các sản phẩm. Trong trường hợp này, sản phẩm là phim, vì vậy nó chứa dữ liệu như tiêu đề phim, danh mục phim, diễn viên, v.v.
  • Chế độ xem :Chế độ xem đặc biệt về dữ liệu được sử dụng để đánh giá.

Vì vậy, bằng cách xem các sơ đồ lược đồ này, chúng ta có thể tiếp tục và tạo cơ sở dữ liệu. Trên thực tế, MySQL Workbench cho phép bạn tạo CREATE TABLE tập lệnh thẳng từ sơ đồ. Sau đó, bạn có thể sử dụng tập lệnh để tạo cơ sở dữ liệu. Bạn thậm chí có thể thiết kế ngược cơ sở dữ liệu thành một sơ đồ.

Lược đồ và Cơ sở dữ liệu có phải là Điều giống nhau không?

Có rất nhiều sự nhầm lẫn về lược đồ khi nói đến cơ sở dữ liệu. Câu hỏi thường đặt ra là liệu có sự khác biệt giữa lược đồ và cơ sở dữ liệu hay không và nếu có thì sự khác biệt là gì.

Phụ thuộc vào nhà cung cấp

Một phần lý do của sự nhầm lẫn là do các hệ thống cơ sở dữ liệu có xu hướng tiếp cận các lược đồ theo cách riêng của chúng.

  • Tài liệu MySQL nói rằng về mặt vật lý, một lược đồ đồng nghĩa với một cơ sở dữ liệu . Do đó, lược đồ và cơ sở dữ liệu là cùng một thứ .
  • Tuy nhiên, tài liệu Cơ sở dữ liệu Oracle nói rằng các đối tượng nhất định có thể được lưu trữ bên trong cơ sở dữ liệu nhưng không được lưu trữ bên trong một lược đồ. Do đó, lược đồ và cơ sở dữ liệu là hai thứ khác nhau .
  • Và theo bài viết kỹ thuật SQL Server này, một lược đồ là một thực thể riêng biệt bên trong cơ sở dữ liệu. Vì vậy, chúng là hai thứ khác nhau .

Vì vậy, tùy thuộc vào RDBMS mà bạn sử dụng, các lược đồ và cơ sở dữ liệu có thể giống nhau hoặc không giống nhau.

Còn tiêu chuẩn SQL thì sao?

Tiêu chuẩn SQL ISO / IEC 9075-1 định nghĩa một lược đồ là một tập hợp các bộ mô tả liên tục, được đặt tên .

Nếu bạn đã từng bối rối trước đây, hy vọng tôi không chỉ làm cho nó tồi tệ hơn…

Ý nghĩa rộng

Một lý do khác cho sự nhầm lẫn có lẽ là do thuật ngữ schema có nghĩa rộng như vậy. Nó có các ý nghĩa khác nhau trong các ngữ cảnh khác nhau.

Từ lược đồ có nguồn gốc từ tiếng Hy Lạp skhēma , có nghĩa là hình thức , hình , hình dạng hoặc kế hoạch .

Lược đồ được sử dụng trong tâm lý học để mô tả một kiểu suy nghĩ hoặc hành vi có tổ chức nhằm sắp xếp các loại thông tin và mối quan hệ giữa chúng.

Trước khi thiết kế cơ sở dữ liệu, chúng ta cũng cần xem xét các loại thông tin và mối quan hệ giữa chúng. Chúng tôi cần tạo một khái niệm giản đồ trước khi chúng tôi bắt đầu với vật lý lược đồ trong DBMS.

Trong phát triển phần mềm, khi thảo luận về các lược đồ, người ta có thể thảo luận về khái niệm lược đồ, vật lý lược đồ, nội bộ lược đồ, bên ngoài lược đồ, lôgic lược đồ, v.v. Mỗi thứ đều có ý nghĩa cụ thể của riêng nó.

Định nghĩa lược đồ của DBMS

Dưới đây là định nghĩa nhanh về lược đồ từ ba hệ thống cơ sở dữ liệu hàng đầu:

MySQL

Về mặt khái niệm, lược đồ là một tập hợp các đối tượng cơ sở dữ liệu có liên quan với nhau, chẳng hạn như bảng, cột bảng, kiểu dữ liệu của cột, chỉ mục, khóa ngoại, v.v.

….

Trong MySQL, về mặt vật lý, một lược đồ đồng nghĩa với cơ sở dữ liệu . Bạn có thể thay thế từ khóa SCHEMA thay vì DATABASE trong cú pháp MySQL SQL, ví dụ:sử dụng CREATE SCHEMA thay vì CREATE DATABASE .

Nguồn:“MySQL Glossary”. Tài liệu tham khảo MySQL 5.7. MySQL. Truy cập ngày 6 tháng 6 năm 2016.

Máy chủ SQL

Tên của bảng, trường, kiểu dữ liệu, khóa chính và khóa ngoài của cơ sở dữ liệu.

"Bảng chú giải". Tài liệu Kỹ thuật SQL Server 2016. Mạng nhà phát triển của Microsoft. Truy cập ngày 6 tháng 6 năm 2016.

Cơ sở dữ liệu Oracle

Hệ thống lược đồ của Cơ sở dữ liệu Oracle hoàn toàn khác với các hệ thống khác. Lược đồ của Oracle gắn liền rất nhiều với người dùng cơ sở dữ liệu.

Lược đồ là một tập hợp các cấu trúc lôgic của dữ liệu hoặc các đối tượng lược đồ. Một lược đồ thuộc sở hữu của người dùng cơ sở dữ liệu và có cùng tên với người dùng đó. Mỗi người dùng sở hữu một giản đồ.

Nguồn:“Đối tượng Cơ sở dữ liệu”. Tài liệu Trực tuyến Cơ sở dữ liệu Oracle 12c Phiên bản 1 (12.1). Trung tâm trợ giúp Oracle. Truy cập ngày 6 tháng 6 năm 2016.

Bài viết này về các định nghĩa lược đồ của DBMS cung cấp thêm chi tiết.

Tạo lược đồ

Mặc dù có sự khác biệt trong việc xác định lược đồ, mỗi trong số ba DBMS nói trên đều hỗ trợ CREATE SCHEMA tuyên bố.

Và đó là nơi kết thúc sự giống nhau.

MySQL

Trong MySQL, CREATE SCHEMA tạo cơ sở dữ liệu.

Điều này là do CREATE SCHEMA là từ đồng nghĩa với CREATE DATABASE . Nói cách khác, bạn có thể sử dụng CREATE SCHEMA hoặc CREATE DATABASE để làm điều tương tự.

Cơ sở dữ liệu Oracle

Trong Cơ sở dữ liệu Oracle, CREATE SCHEMA tuyên bố không thực sự tạo ra một giản đồ. Điều này là do một lược đồ đã được tạo với mỗi người dùng cơ sở dữ liệu.

Trong Oracle, CREATE USER câu lệnh tạo lược đồ.

Trong Oracle, CREATE SCHEMA câu lệnh cho phép bạn điền vào lược đồ của mình với các bảng và dạng xem cũng như cấp các đặc quyền trên các đối tượng đó mà không cần phải phát hành nhiều câu lệnh SQL trong nhiều giao dịch.

Máy chủ SQL

Trong SQL Server, CREATE SCHEMA sẽ tạo một lược đồ theo tên bạn đặt cho nó.

Không giống như MySQL, CREATE SCHEMA câu lệnh tạo một lược đồ được xác định riêng cho cơ sở dữ liệu.

Không giống như Oracle, CREATE SCHEMA câu lệnh thực sự tạo ra lược đồ.

Trong SQL Server, khi bạn tạo lược đồ, bạn có thể thêm người dùng và đối tượng vào nó.

Kết luận

Thuật ngữ lược đồ có thể được sử dụng trong nhiều ngữ cảnh khác nhau. Trong bối cảnh tạo các lược đồ trong một hệ thống quản lý cơ sở dữ liệu cụ thể, tuy nhiên, bạn sẽ cần phải làm việc với DBMS để xác định các lược đồ.

Và khi bạn chuyển sang DBMS mới, hãy nhớ tra cứu cách hệ thống đó xác định các lược đồ.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ví dụ về LOCALTIME - MySQL

  2. SYSDATE () so với NOW () trong MySQL:Sự khác biệt là gì?

  3. LENGTH () trong MySQL là gì?

  4. Cách Chèn Nhiều Hàng trong MySQL

  5. Ví dụ về cách sử dụng bind_result và get_result