You are on page 1of 5

Cơ bản về Cơ sở dữ liệu và Cơ sở dữ liệu quan hệ

Cơ sở dữ liệu là môn học cơ sở của chuyên ngành CNTT, bất kỳ sinh viên CNTT nào cũng cần
nắm vững và sử dụng thành thạo Cơ sở dữ liệu để sử dụng cho công việc sau này. Tuy nhiên, đây
cũng là môn học khó hiểu với nhiều sinh viên, nhất là giai đoạn thiết kế Cơ sở dữ liệu. Do vậy
tôi viết chuỗi bài viết này với hy vọng sẽ giúp các bạn dễ dàng hơn trong việc tiếp cận môn học
này.
Lý do cần có cơ sở dữ liệu
Chúng ta bắt đầu câu chuyện của một quán tạp hóa của dì Ba đầu ngõ, mỗi ngày bán được 3-5
bao xà phòng, 4 chai nước mắm, 6 gói Bim Bim… để biết được lời, lỗ và đảm bảo không bị sót,
mất mát, dì Ba lấy một cuốn tập làm sổ ghi chép số tiền mua hàng, số tiền bán hàng mỗi ngày và
kiểm tra qua số hàng còn lại để biết lỗ lãi.
Từ ngày chung cư phía trước hình thành, dân cư đến ở đông, tiệm dì Ba tấp nập hẳn lên, mỗi
ngày bán hàng trăm mặt hàng, mỗi mặt hàng từ vài chục đến trăm cái, dì Ba không thể nào tính
được việc lời lỗi hay tồn kho nữa.
May mà trong nhà có cái Tí vừa học xong khóa tin học văn phòng nên dì Ba mua cho nó cái máy
tính và bảo nó giúp. Nó lập nên các bảng Excel quản lý Tồn kho, Nhập hàng, Bán hàng như sau:

Thêm một số công thức nữa thì công việc tính toán, cộng, trừ, nhân, chia hàng ngày của dì Ba
giảm hẳn, đỡ được nhiều việc.
Khi chung cư trước mặt lấp đầy thì công việc buôn bán của dì Ba trở nên vô cùng phát đạt, bên
cạnh tạp hóa dì bán thêm văn phòng phẩm và một số mặt hàng gia dụng nữa. Mấy cái bảng con Tí
làm dùng trước đây cũng được nhưng bây giờ nhiều quá chạy quá chậm, đôi lúc không cẩn thận
lại chạy sai (do không cập nhật công thức), mà chỉ có mỗi nó làm được, ai đó mà đụng vô là sai
tùm lum hết nên cũng bất tiện.
Hôm rồi dì hỏi thằng Tôm bên nhà, nó là dân IT hẳn hoi, nó bảo dì phải dùng phần mềm và cơ sở
dữ liệu thì mới giải quyết được. Nó bảo có cơ sở dữ liệu và phần mềm dì sẽ không sợ sai công
thức, không sợ nhiều dữ liệu mà ai nhập cũng được. Nghe vậy gì cũng ưng.
Vậy cơ sở dữ liệu là gì?
“Cơ sở dữ liệu là cách thức tổ chức lưu trữ dữ liệu hiệu quả để đảm bảo việc nhập và khai thác
dữ liệu nhanh và chính xác”.
Cơ sở dữ liệu quan hệ là gì?

https://iviettech.vn
Cơ sở dữ liệu có nhiều cách tổ chức, trong đó cách hiệu quả nhất là tổ chức theo mô hình quan
hệ do tiến sĩ E.F.Code người Đức đề xuất năm 1969 và người ta gọi đó là cơ sở dữ liệu quan hệ.
Theo đó:
“Cơ sở dữ liệu quan hệ tổ chức dữ liệu theo các bảng và có quan hệ với nhau để giảm thiểu sự dư
thừa dữ liệu đồng thời vẫn đảm bảo sự hiệu quả trong lưu trữ và truy xuất dữ liệu ”
Ngày nay, cơ sở dữ liệu quan hệ được dùng trong hầu hết các hệ thống phần mềm từ kế toán,
ngân hàng, doanh nghiệp, …
Các thành phần cơ bản của một Cơ sở dữ liệu quan hệ
- Bảng dữ liệu (Table): là thành phần chính trong cơ sở dữ liệu quan hệ. Bảng chứa dữ
liệu.

Khóa chính Các trường

Các
dòng

Trong đó:
o Cột/Trường (Field): các trường thể hiện thuộc tính của bảng dữ liệu ví dụ tên,
địa chỉ…
o Dòng(row): là một dòng dữ liệu gồm các dữ liệu có liên quan với nhau hay còn
gọi là bảng ghi (record).
o Ô (cell): Giao giữa dòng và cột và là nơi chứa dữ liệu.
o Khóa chính(Primary Key): là một trường hoặc nhiều trường gộp lại được sử
dụng để định nghĩa bảng ghi. Khóa chính có 02 thuộc tính là không được trùng và
không được rỗng. Ví dụ: giá trị 1 của trường CustomerID đó sẽ suy ra được tất cả
dữ liệu của dòng đầu tiên. Hay nói cách khác các giá trị của dòng đầu tiên là giá
trị các thuộc tính của bảng ghi có customerID = 1.
Một bảng có thể có khóa chính hoặc không, tuy nhiên để dễ quản lý người ta thường định
nghĩa khóa chính cho các bảng.

- Mối quan hệ (Relationship)

Trung tâm đào tạo lập trình viên chuyên nghiệp iViettech
Khóa ngoại
Trong đó:
o Khóa ngoại (Foreign Key): là trường ở bảng này (bảng Invoice) nhưng có trường
tương ứng làm khóa chính ở bảng kia (bảng Customer) để tạo ra mối quan hệ giữa
hai bảng.
o Mối quan hệ (Relationship): tạo ra mối liên kết giữa hai bảng nhằm xác định mối
liên quan giữa các trường dữ liệu của hai bảng. Ví dụ: nếu bạn muốn biết khách
hàng có mã khách hàng số 1 mua những đơn hàng nào thì bạn phải dựa vào mối
quan hệ trên. Trong cơ sở dữ liệu quan hệ mối quan hệ thể hiện ở 03 dạng sau:
 Quan hệ 1-1: Trong quan hệ này mỗi bảng chỉ có một và chỉ một bảng ghi
tương ứng mà thôi. Ví dụ quan hệ vợ - chồng, quan hệ Thông tin cơ bản –
Thông tin chi tiết ...
 Quan hệ 1-n: Là quan hệ phổ biến nhất trong cơ sở dữ liệu, trong hệ này 1
bảng ghi ở bảng này có nhiều bảng ghi tương ứng ở bảng kia. Trong ví dụ
trên một bảng ghi trong bảng Customer có nhiều bảng ghi trong bảng
Invoice.
 Quan hệ n-n: trong quan hệ này một bảng ghi trong bảng này tương ứng
với nhiều bảng ghi trong bảng kia và ngược lại.

Bạn hãy xem mô hình hóa bên dưới để hiểu rõ hơn về các mối quan hệ.

X Y X Y X Y
X Y X Y X Y
X Y X Y X Y

Quan hệ 1-1 Quan hệ 1-n Quan hệ n-n

https://iviettech.vn
- Lược đồ thực thể quan hệ (ERD: Entity Relationship Diagram)
ERD sẽ giúp bạn hiểu nhanh hơn về cấu trúc của Cơ sở dữ liệu, từ đó giúp bạn dễ dàng thao
tác hơn với chúng.

Lược đồ quan hệ (ERD) của cơ sở dữ liệu quản lý đơn hàng

Hệ quản trị Cơ sở dữ liệu (Database Management System - DBMS)


DBMS là các phần mềm dùng để quản lý và vận hành Cơ sở dữ liệu. Các DBMS phổ biến như
MySQL, SQL Server, Oracle Database, DB2 …
Bảng so sánh một số DBMS phổ biến

DBMS Kích thước hệ thống Hệ điều hành Năm ra đời

Oracle Lớn UNIX 1979


Windows

Trung tâm đào tạo lập trình viên chuyên nghiệp iViettech
DB2 Lớn và vừa AIX(R) 1985
HP-UX
Linux(R)
Solaris
Windows(R)

MySQL Vừa và nhỏ All OS 1987

MS SQL Vừa và nhỏ Windows 2000


Server
…..

Tóm lại
Chúng ta vừa tìm hiểu các khái niệm về cơ bản của Cơ sở dữ liệu và Cơ sở dữ liệu quan hệ, còn
rất nhiều vấn đề cần tìm hiểu như tại sao phải sử dụng cơ sở dữ liệu quan hệ, làm thế nào để thiết
kế cơ sở dữ liệu …. Chúng ta sẽ tiếp tục tìm hiểu các phần tiếp theo ở các bài sau.

https://iviettech.vn

You might also like