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. Show Lý do cần có cơ sở dữ liệuChú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). Hơn nữa 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ì?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ệ. “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ệ1. Bảng dữ liệu (Table)Bảng dữ liệu là thành phần chính trong cơ sở dữ liệu quan hệ. Bảng chứa dữ liệu. Trong đó:
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. 2. Mối quan hệ (Relationship)Trong đó:
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ệ. 3. 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:
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. Bài tiếp: Thiết kế cơ sở dữ liệu – Các bước thực hiện Nếu bạn có điều gì chưa rõ hoặc thắc mắc bạn có thể để lại bình luận bên dưới tôi sẽ sẵn sàng trao đổi với bạn.
BÀI 10: CƠ SỞ DỮ LIỆU QUAN HỆ 1. Mô hình dữ liệu quan hệa. Khái niệm mô hình dữ liệu- Mô hình dữ liệu là một tập hợp các khái niệm, dùng để mô tả CTDL, các thao tác dữ liệu, các ràng buộc dữ liệu của một CSDL - Các loại mô hình dữ liệu:
b. Mô hình dữ liệu quan hệ- Mô hình dữ liệu quan hệ được E.F.Codd đề xuất năm 1970. Trong khoảng 20 năm trở lại đây các hệ CSDL theo mô hình quan hệ được dùng rất phổ biến. - Trong mô hình quan hệ:
2. Cơ sở dữ liệu quan hệa. Khái niệm- CSDL quan hệ: CSDL được xây dựng trên mô hình dữ liệu quan hệ. - Hệ QTCSDL quan hệ : Hệ QTCSDL quan hệ dùng để tạo lập, cập nhật và khai thác CSDL quan hệ. - Những đặc trưng của CSDL quan hệ:
b. Ví dụ- Để quản lý học sinh mượn sách ở một trường học, thông thường quản lí các thông tin sau:
c. Khóa và liên kết giữa các bảng- Khóa: Khóa của một bảng là một tập gồm một hay một số thuộc tính của bảng phân biệt được các cá thể. - Khoá chính:
* Chú ý:
- Liên kết: Thực chất sự liên kết giữa các bảng là dựa trên thuộc tính khóa. Chẳng hạn thuộc tính số thẻ là khóa của bảng người mượn xuất hiện lại ở bảng mượn sách đó tạo nên liên kết giữa 2 bảng này. |