Quy tắc của Codd
Tiến sĩ Edgar F. Codd, năm 1985 , đã đặt ra 13 quy tắc cơ bản sau khi thực hiện nghiên cứu quy mô lớn về Mô hình quan hệ của cơ sở dữ liệu. Theo ông, mọi cơ sở dữ liệu phải tuân theo các quy tắc này để được coi là cơ sở dữ liệu quan hệ chính xác (RDBMS). 13 quy tắc này được gọi là 12 quy tắc của Codd ( Quy tắc nền tảng là cơ sở cho các quy tắc khác ).
Các quy tắc được đề cập dưới đây là 12 quy tắc do Codd đặt ra:
Số sê-ri | Quy tắc |
0 | Quy tắc nền tảng |
1 | Quy tắc thông tin |
2 | Quy tắc truy cập được đảm bảo |
3 | Xử lý có hệ thống các giá trị NULL |
4 | Danh mục Trực tuyến Hoạt động |
5 | Quy tắc ngôn ngữ con dữ liệu toàn diện |
6 | Xem quy tắc cập nhật |
7 | Chèn cấp cao, cập nhật, xóa quy tắc |
8 | Quy tắc độc lập dữ liệu vật lý |
9 | Quy tắc độc lập dữ liệu lôgic |
10 | Độc lập liêm chính |
11 | Độc lập về phân phối |
12 | Quy tắc không lật đổ |
Hãy thảo luận chi tiết từng quy tắc ở trên.
Quy tắc nền tảng
Nó tuyên bố rằng cơ sở dữ liệu phải có khả năng quản lý tất cả các bản ghi thông qua các khả năng quan hệ của nó.
Quy tắc thông tin
Quy tắc này nói rằng các bản ghi được lưu trong cơ sở dữ liệu có thể là dữ liệu người dùng hoặc có thể là siêu dữ liệu. Nhưng dữ liệu đó phải hiện diện dưới dạng giá trị trong một ô trong bảng cơ sở dữ liệu. Điều quan trọng là mọi bản ghi trong cơ sở dữ liệu phải được lưu trữ ở định dạng bảng, tức là ở dạng bảng.
Quy tắc truy cập được đảm bảo
Quy tắc này tuyên bố rằng cần đảm bảo rằng mọi dữ liệu nguyên tử trong cơ sở dữ liệu đều có thể được truy cập với sự trợ giúp của sự kết hợp của khóa (khóa chính), tên thuộc tính và tên bảng . Ngoài ra, không có thuộc tính nào khác ngoài những thuộc tính này, chẳng hạn như con trỏ, có thể truy cập vào dữ liệu.
Xử lý có hệ thống các giá trị NULL
Nó nói rằng mọi giá trị NULL trong một bảng phải được xử lý một cách có phương pháp và thống nhất. NULL có thể được coi là không có dữ liệu hoặc dữ liệu không xác định hoặc dữ liệu không áp dụng được. Do đó, đây là quy tắc cơ bản cần được tuân thủ.
Danh mục trực tuyến đang hoạt động
Nó thể hiện rằng định nghĩa về mô tả cấu trúc của cơ sở dữ liệu hoàn chỉnh nên được lưu giữ trong một danh mục trực tuyến. Các danh mục này được gọi là từ điển dữ liệu và chúng chỉ có thể được truy xuất bởi những người dùng được ủy quyền thích hợp. Các danh mục này có thể được truy xuất bằng cách sử dụng ngôn ngữ truy vấn tương ứng, được sử dụng để vận hành cơ sở dữ liệu.
Quy tắc ngôn ngữ phụ của dữ liệu toàn diện
Nó thể hiện rằng cơ sở dữ liệu chỉ có thể được truy cập bằng ngôn ngữ cú pháp tuyến tính nắm giữ định nghĩa dữ liệu, thao tác dữ liệu và hoạt động giao dịch . Ngôn ngữ này có thể được sử dụng trực tiếp hoặc bằng cách sử dụng các ứng dụng khác. Truy cập cơ sở dữ liệu mà không sử dụng ngôn ngữ bị coi là vi phạm.
Xem quy tắc cập nhật
Nó nói rằng mọi chế độ xem của cơ sở dữ liệu phải có thể xem lại cả về mặt lý thuyết và cả hệ thống.
Chèn cấp cao, cập nhật và xóa quy tắc
Nó tuyên bố rằng mọi hàng của cơ sở dữ liệu phải có các hành vi chèn, cập nhật, xóa, kết hợp, giao nhau và dấu trừ ở mức cao để truy xuất dữ liệu trong bảng.
Độc lập về dữ liệu vật lý
Nó đề cập rằng dữ liệu được lưu trữ trong cơ sở dữ liệu không nên phụ thuộc vào ứng dụng. Điều này ngụ ý rằng những thay đổi trong cấu trúc của cơ sở dữ liệu sẽ không ảnh hưởng đến việc truy cập dữ liệu của các ứng dụng bên ngoài cơ sở dữ liệu.
Độc lập dữ liệu lôgic
Nó, giống như quy tắc trước, nói rằng dữ liệu logic trong cơ sở dữ liệu không được phụ thuộc vào ứng dụng của khách hàng. Điều này có nghĩa là bất kỳ thay đổi nào trong dữ liệu sẽ không ảnh hưởng đến ứng dụng. Quy tắc này là một trong những quy tắc khó thực hiện nhất.
Độc lập về tính chính trực
Quy tắc này cũng đề cập rằng một cơ sở dữ liệu không được phụ thuộc vào ứng dụng sử dụng nó. Điều này có nghĩa là tất cả các ràng buộc toàn vẹn của cơ sở dữ liệu phải có thể sửa đổi được mà không cần bất kỳ thay đổi nào trong ứng dụng.
Độc lập về phân phối
Quy tắc này đề cập rằng người dùng sẽ không cảm thấy hoặc không thể hình dung rằng dữ liệu được trải rộng trên nhiều vị trí. Người dùng phải luôn cảm thấy rằng dữ liệu chỉ nằm ở một vị trí cụ thể. Quy tắc này được coi là nền tảng cho hệ thống cơ sở dữ liệu phân tán.
Quy tắc không lật đổ
Quy tắc này nói rằng nếu một hệ thống sở hữu một giao diện cung cấp quyền truy cập vào các bản ghi cấp thấp, thì giao diện đó sẽ không có quyền làm mất ổn định hệ thống bao gồm các hạn chế về bảo mật và tính toàn vẹn của nó.
Do đó, đây là 12 quy tắc được đặt ra bởi Tiến sĩ Edgar F. Codd, cần tuân theo một cơ sở dữ liệu để được gọi là quan hệ thực sự (RDBMS).