RDBMS – Relational Database Management System trong SQL Server RDBMS – Relational Database Management System là phần không thể không đề cập đến khi tìm hiểu về SQL. Vậy RDBMS là gì? Nó gồm những thành phần nào? Chúng ta sẽ cùng tìm hiểu trong bài học này nhé. Sơ lược về RDBMSRDBMS là viết tắt của Relational Database Management System (Hệ quản trị cơ sở dữ liệu quan hệ). RDBMS là nền tảng cho SQL cũng như cho tất cả các hệ cơ sở dữ liệu khác như MS SQL Server, IBM DB2, Oracle, MýQL và Microsoft Access. Một hệ quản trị cơ sở dữ liệu quan hệ là hệ quản trị cơ sở dữ liệu (DBMS) dựa trên mô hình quan hệ được giới thiệu bởi E.F.Codd. Một số khái niệm khác thuộc RDBMSBảng – TablesNếu đã biết qua về SQL chắc hẳn bạn đã biết đến các bảng dữ liệu trong đó. Có thể nói rằng, dữ liệu trong RDBMS được lưu trữ trong các đối tượng cơ sở dữ liệu được gọi là các bảng. Bảng này về cơ bản là một bộ sưu tập các mục dữ liệu có quan hệ 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 đơn giản và phổ biến nhất trong cơ sở dữ liệu quan hệ. Dưới đây là một ví dụ về bảng CUSTOMERS: Trường -FieldMọi bảng đều có thể chia thành những mục nhỏ hơn gọi là trường (field). Các trường trong bảng CUSTOMERS bao gồm: ID, NAME, AGE, ADDRESS và SALARY. 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 (record) trong bảng. Bản ghi hay hàng là gì?Một bản ghi thường được gọi là hàng dữ liệu, là từng mục riêng lẻ tồn tại trong bảng. Ví dụ, có 7 bản ghi trong bảng CUSTOMERS trên. Và đây là một hàng dữ liệu hay bảng ghi trong bảng CUSTOMERS: Bản ghi chính là một thực thể nằm ngang trong bảng. Cột – ColumnCột là một thực thể nằm dọc trong bảng, chứa tất cả các thông tin liên kết với một trường trong bảng. Ví dụ, một cột trong bảng CUSTOMERS là ADDRESS, mô tả tên sản phẩm và được hiển thị như dưới đây: Giá trị NULLGiá trị NULL trong bảng là giá trị trong trường bị để trống, hay nói cách khác là trường không chứa giá trị, nó bị để trống khi tạo bản ghi. Bạn cần phải nhớ rằng, NULL là trường bị để trống, hoàn toàn khác với giá trị 0 hoặc trường có chứa khoảng trắng. Trường có giá trị NULL là trường đã bị để trống ngay từ quá trình tạo bản ghi. Ràng buộc trong SQLRàng buộc (Constraint) là các quy tắc được áp dụng trên các cột dữ liệu của một bảng. Chúng được sử dụng để kiểm tra tính hợp lệ của dữ liệu đầu vào, đảm bảo tính chính xác, độ tin cậy và tính toàn vẹn của dữ liệu trong database. Các constraint này có thể áp dụng trên một cột hay một table mà có mức độ ảnh hưởng khác nhau. Nếu chỉ áp dụng trên một cột thì cột đó bắt buộc phải đảm bảo thoả mãn các điều kiện được đinh nghĩa trong constraint, trong khi áp dụng ở mức table thì tất cả các cột phải thoả mãn. Dưới đây là một số các ràng buộc phổ biến nhất được sử dụng trong SQL. Ràng buộc Ý nghĩaNOT NULL Đảm bảo giá trị của cột không được nhận giá trị NULL. DEFAULT Cung cấp một giá trị mặc định khi dữ liệu của một cột NULL. UNIQUE Đảm bảo rằng dữ liệu của cột là duy nhất, tất cả các giá trị trong một cột là khác nhau không trùng lặp. PRIMARY Key Dùng để thiết lập khóa chính trên bảng, giá trị của cột làm khóa chính phải là duy nhất, không được trùng lặp. Việc khai báo ràng buộc khóa chính yêu cầu các cột phải NOT NULL. FOREIGN Key Dùng để thiết lập khóa ngoại trên bảng, tham chiếu đến bảng khác thông qua giá trị của cột được liên kết. Giá trị của cột được liên kết phải là duy nhất trong bảng kia. CHECK Đảm bảo tất cả các giá trị trong một cột thỏa mãn một số điều kiện. INDEX Dùng để tạo và lấy dữ liệu từ cơ sở dữ liệu một cách nhanh chóng. Toàn vẹn dữ liệu trong SQLTính toàn vẹn dữ liệu là tổng thể hoàn chỉnh, chính xác và nhất quán của dữ liệu, nó đảm bảo các giá trị thêm mới, sửa đổi phải đảm bảo tính chính xác, hợp lý với tổng thể dữ liệu. Tính toàn vẹn thường được thiết lập trong giai đoạn thiết kế cơ sở dữ liệu thông qua việc sử dụng các thủ tục và quy tắc chuẩn. Những phương pháp kiểm tra lỗi và thủ tục xác nhận khác nhau sẽ được triển khai để duy trì tính toàn vẹn của dữ liệu. Nếu dữ liệu định đưa vào bảng vi phạm các quy tắc, thủ tục của toàn vẹn dữ liệu thì nó sẽ không được lưu vào cơ sở dữ liệu. Dưới đây là một số loại toàn vẹn dữ liệu tồn tại trong mỗi RDBMS:
Chuẩn hóa cơ sở dữ liệuChuẩn hóa cơ sở dữ liệu là quá trình tổ chức dữ liệu một các hiệu quả trong cơ sở dữ liệu. Tại sao cần phải thực hiện quá trình này? Có hai lý do:
Hai lý do này rất xứng đáng để thực hiện chuẩn hóa cơ sở dữ liệu, vì chúng làm giảm dung lượng không gian lưu trữ mà cơ sở dữ liệu sử dụng và đảm bảo rằng dữ liệu được lưu trữ logic. Chuẩn hóa bao gồm một loạt chỉ dẫn giúp bạn tạo một cấu trúc cơ sở dữ liệu tốt. Chỉ dẫn chuẩn hóa được chia thành các Normal Form (định dạng hoặc cách cấu trúc cơ sở dữ liệu được bố trí) với mục đích là tổ chức cấu trúc cơ sở dữ liệu để nó tuân thủ quy tắc của First Normal Form (1NF) rồi Second Normal Form (2NF) và cuối cùng là Third Normal Form (3NF). Chúng ta sẽ tìm hiểu cụ thể về các Normal Form này trong các bài chuyên sâu hơn. Qua bài viết, hy vọng mọi người được hiểu hơn về hệ quản trị cơ sở dữ liệu quan hệ RDBMS trong SQL Server. |