SQL - Các khái niệm RDBMS
RDBMS là gì?
RDBMS là viết tắt của Rphấn chấn Database Msự suy yếu System. RDBMS là cơ sở cho SQL và cho tất cả các hệ thống cơ sở dữ liệu hiện đại như MS SQL Server, IBM DB2, Oracle, MySQL và Microsoft Access.
Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) là một hệ quản trị cơ sở dữ liệu (DBMS) dựa trên mô hình quan hệ như EF Codd đã giới thiệu.
Bảng là gì?
Dữ liệu trong RDBMS được lưu trữ trong các đối tượng cơ sở dữ liệu được gọi là tables. Bảng này về cơ bản là một tập hợp các mục dữ liệu liên quan và nó bao gồm nhiều cột và hàng.
Hãy nhớ rằng, bảng là hình thức lưu trữ dữ liệu phổ biến nhất và đơn giản nhất trong cơ sở dữ liệu quan hệ. Chương trình sau đây là một ví dụ về bảng CUSTOMERS -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Trường là gì?
Mọi bảng được chia thành các thực thể nhỏ hơn được gọi là các trường. Các trường trong bảng KHÁCH HÀNG bao gồm ID, TÊN, TUỔI, ĐỊA CHỈ và LƯƠNG.
Trường là một cột trong bảng được thiết kế để duy trì thông tin cụ thể về mọi bản ghi trong bảng.
Bản ghi hay Hàng là gì?
Một bản ghi còn được gọi là một hàng dữ liệu là mỗi mục nhập riêng lẻ tồn tại trong một bảng. Ví dụ, có 7 bản ghi trong bảng KHÁCH HÀNG ở trên. Sau đây là một hàng dữ liệu hoặc bản ghi trong bảng CUSTOMERS -
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
+----+----------+-----+-----------+----------+
Bản ghi là một thực thể nằm ngang trong một bảng.
Cột là gì?
Cột là một thực thể dọc trong bảng chứa tất cả thông tin được liên kết với một trường cụ thể trong bảng.
Ví dụ: một cột trong bảng KHÁCH HÀNG là ĐỊA CHỈ, biểu thị mô tả vị trí và sẽ như hình dưới đây -
+-----------+
| ADDRESS |
+-----------+
| Ahmedabad |
| Delhi |
| Kota |
| Mumbai |
| Bhopal |
| MP |
| Indore |
+----+------+
Giá trị NULL là gì?
Giá trị NULL trong bảng là giá trị trong trường có vẻ trống, có nghĩa là trường có giá trị NULL là trường không có giá trị.
Điều rất quan trọng là phải hiểu rằng giá trị NULL khác với giá trị 0 hoặc một trường có chứa khoảng trắng. Trường có giá trị NULL là trường đã bị bỏ trống trong quá trình tạo bản ghi.
Các ràng buộc SQL
Ràng buộc là các quy tắc được thực thi trên các cột dữ liệu trên bảng. Chúng được sử dụng để giới hạn loại dữ liệu có thể đi vào bảng. Điều này đảm bảo tính chính xác và độ tin cậy của dữ liệu trong cơ sở dữ liệu.
Các ràng buộc có thể là cấp cột hoặc cấp bảng. Các ràng buộc mức cột chỉ được áp dụng cho một cột trong khi các ràng buộc mức bảng được áp dụng cho toàn bộ bảng.
Sau đây là một số ràng buộc được sử dụng phổ biến nhất hiện có trong SQL:
Ràng buộc NOT NULL - Đảm bảo rằng một cột không thể có giá trị NULL.
Ràng buộc DEFAULT - Cung cấp giá trị mặc định cho một cột khi không có cột nào được chỉ định.
Ràng buộc DUY NHẤT - Đảm bảo rằng tất cả các giá trị trong một cột là khác nhau.
Khóa CHÍNH - Xác định duy nhất mỗi hàng / bản ghi trong bảng cơ sở dữ liệu.
Khóa FOREIGN - Xác định duy nhất một hàng / bản ghi trong bất kỳ bảng cơ sở dữ liệu nào khác.
Ràng buộc CHECK - Ràng buộc CHECK đảm bảo rằng tất cả các giá trị trong một cột thỏa mãn các điều kiện nhất định.
INDEX - Được sử dụng để tạo và lấy dữ liệu từ cơ sở dữ liệu rất nhanh chóng.
Toàn vẹn dữ liệu
Các loại dữ liệu toàn vẹn sau tồn tại với mỗi RDBMS:
Entity Integrity − Không có hàng trùng lặp nào trong bảng.
Domain Integrity − Thực thi các mục nhập hợp lệ cho một cột nhất định bằng cách hạn chế loại, định dạng hoặc phạm vi giá trị.
Referential integrity − Hàng không thể bị xóa, được sử dụng bởi các bản ghi khác.
User-Defined Integrity − Thực thi một số quy tắc kinh doanh cụ thể không nằm trong tính toàn vẹn của thực thể, miền hoặc tham chiếu.
Chuẩn hóa cơ sở dữ liệu
Chuẩn hóa cơ sở dữ liệu là quá trình tổ chức dữ liệu một cách hiệu quả trong cơ sở dữ liệu. Có hai lý do của quá trình chuẩn hóa này -
Loại bỏ dữ liệu dư thừa, chẳng hạn như lưu trữ cùng một dữ liệu trong nhiều bảng.
Đảm bảo các phụ thuộc dữ liệu có ý nghĩa.
Cả hai lý do này đều là những mục tiêu xứng đáng vì chúng làm giảm dung lượng mà cơ sở dữ liệu sử dụng và đảm bảo rằng dữ liệu được lưu trữ một cách hợp lý. Chuẩn hóa bao gồm một loạt các nguyên tắc giúp hướng dẫn bạn tạo một cấu trúc cơ sở dữ liệu tốt.
Hướng dẫn chuẩn hóa được chia thành các dạng thông thường; nghĩ về một biểu mẫu như là định dạng hoặc cách một cấu trúc cơ sở dữ liệu được trình bày. Mục đích của các biểu mẫu thông thường là tổ chức cấu trúc cơ sở dữ liệu, sao cho nó tuân thủ các quy tắc của biểu mẫu chuẩn đầu tiên, sau đó là biểu mẫu chuẩn thứ hai và cuối cùng là biểu mẫu chuẩn thứ ba.
Bạn có thể chọn nó xa hơn và chuyển sang dạng chuẩn thứ tư, dạng chuẩn thứ năm, v.v., nhưng nói chung, dạng chuẩn thứ ba là quá đủ.
- Dạng chuẩn đầu tiên (1NF)
- Dạng chuẩn thứ hai (2NF)
- Dạng chuẩn thứ ba (3NF)