Căn bản về Database
Chào các bạn, hẳn ai trong chúng ta khi đã bước vào ngành công nghệ thông tin đều đã nghe qua về database, đối với tester hay developer có lẽ database là một cụm từ quá quen thuộc phải không nào, nhưng những nguyên tắc cơ bản của nó không phải ai cũng hiểu hết. Hôm nay mình xin dành một chút thời gian để chia sẻ về chủ đề này.
Database
Database hay cơ sở dữ liệu là một tập hợp dữ liệu có tổ chức và thường được lưu trữ và truy cập từ một hệ thống máy tính. Chúng ta sử dụng database như một giải pháp để lưu trữ, quản lý và truy xuất thông tin trong thời gian thực.
DBMS (Database Management System)
Database thường được kiểm soát bởi các hệ quản trị cơ sở dữ liệu (DBMS). DBMS là hệ thống phần mềm giúp người dùng tạo, truy xuất , cập nhật và quản lý các dữ liệu trên cơ sở database . Ngoài ra, DBMS còn hỗ trợ người dùng kiểm soát quyền truy cập đọc / ghi, tạo báo cáo và phân tích việc sử dụng, hỗ trợ truy cập từ xa, backup dữ liệu. Đa phần các DBMS ngày nay, chúng ta thường sẽ cần sử dụng ngôn ngữ SQL để tương tác với cơ sở dữ liệu.
Một số DBMS phổ biến chúng ta thường gặp như: MySQL, SQL Server, PostgreSQL, SQLite, Oracle,…
RDBMS (Relational Database Management System)
RDBMS là hệ quản trị dữ liệu quan hệ, một version nâng cao của DBMS sử dụng mô hình dữ liệu quan hệ. Một cơ sở dữ liệu quan hệ là một database cho phép người dùng lưu trữ dữ liệu dưới dạng nhiều bảng (table) , được thiết lập bằng cách tạo mối quan hệ giữa các bảng khác nhau , tạo ra một cách hiệu quả để truy cập cơ sở dữ liệu. Một số RDBMS tiêu biểu thường gặp như : MS SQL Server, IBM DB2, Oracle, MySQL và Microsoft Access.
Table (bảng)
Table là một tập hợp dữ liệu có liên quan với nhau được lưu trữ ở dạng hàng (row) và cột (column). Table là hình thức lưu trữ dữ liệu phổ biến và đơn giản nhất trong một cơ sở dữ liệu quan hệ. Ví dụ ta có bảng Product
ID | Product_Name | Price | Quantity |
1 | váy hoa | 80000 | 5 |
2 | váy dài | 70000 | 2 |
3 | váy lụa | 50000 | 10 |
Field (trường)
Mỗi bảng gồm một hoặc nhiều thực thể nhỏ gọi là trường. Trường là một cột trong một bảng , lưu trữ thông tin cụ thể về mỗi bản ghi trong bảng. Trong ví dụ trên ta có các các field là ID, Product_Name, Price, Quantity.
Row (hàng)
Mỗi row là một bản ghi của bảng. Mỗi row chứa thông tin về một thực thể riêng rẽ nằm ngang. Trong ví dụ trên bảng Product có 3 hàng riêng rẽ, hàng đầu tiên sẽ được thể hiện như sau:
1 | váy hoa | 80000 | 5 |
Column (cột)
Một column là một thực thể thẳng đứng trong một table có chứa tất cả các thông tin liên kết với một field cụ thể. Trong ví dụ bảng Product ở trên ta có column Quantity sẽ được thể hiện như sau:
Quantity |
5 |
2 |
10 |
Giá trị NULL
Một trường có giá trị NULL là một trường không có giá trị, nghĩa là giá trị đã được để trống trong quá trình tạo bản ghi hoặc xóa về trống khi cập nhật bản ghi đó. Điều này khác với việc một trường có giá trị bằng 0 hoặc chứa khoảng trắng.
Constraint (Ràng buộc)
Constraint là các quy tắc cho các cột dữ liệu trên một bảng. Chúng thường được dùng để giới hạn loại dữ liệu có thể nhập vào bảng nhằm đảm bảo tính chính xác và độ tin cậy của dữ liệu trong bảng. Có 2 cấp độ constraint: column level và table level. Column level chỉ áp dụng cho một cột trong khi table level có phạm vi trên toàn bảng đó.
Một số các ràng buộc phổ biến nhất thường được sử dụng trong SQL:
- NOT NULL: Đảm bảo rằng một cột không chứa có giá trị NULL.
- DEFAULT: Cung cấp một giá trị mặc định cho một cột khi không có gì được chỉ định.
- UNIQUE: Đảm bảo rằng tất cả các giá trị trong một cột là khác nhau.
- PRIMARY Key: Xác định mỗi hàng / bản ghi là duy nhất trong một bảng cơ sở dữ liệu.
- FOREIGN Key: Xác định một hàng / bản ghi là duy nhất trong bất kỳ bảng cơ sở dữ liệu khác.
- CHECK: Đảm bảo rằng 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ăng tốc tạo và lấy dữ liệu từ cơ sở dữ liệu.
Tổng kết
Qua bài viết này mình hy vọng các bạn nắm rõ hơn về các nguyên tắc cơ bản về cơ sở dữ liệu. Ở bài tiếp theo mình sẽ giới thiệu về các nguyên tắc cơ bản trong SQL các bạn nhớ theo dõi nhé.
Bài viết có tham khảo các nguồn:
RDBMS là gì? / Cơ sở dữ liệu / DBMS (Database Management System) Là Gì
One Comment