Chương này trình bày một cách nhìn khái quát về cơ sở dữ liệu (CSDL/DB), về hệ quản trị cơ sở dữ liệu (HQTCSDL/DBMS) và về hệ cơ sở dữ liệu (HCSDL/DBS). Các đòi hỏi khi xây dựng một HQTCSDL đó cũng chính là những chức năng mà một HCSDL cần phải có.
Trong chương này chúng tôi cũng muốn giới thiệu tổng quan về ngôn ngữ hỏi có cấu trúc (SQL) và các hệ quản trị cơ sở dữ liệu quan hệ là một trong những nền tảng kỹ thuật quan trọng trong công nghiệp máy tính. Cho đến nay, có thể nói rằng SQL đã được xem là ngôn ngữ chuẩn trong cơ sở dữ liệu. Các hệ quản trị cơ sở dữ liệu quan hệ thương mại hiện có như Oracle, SQL Server, Informix, DB2,… đều chọn SQL làm ngôn ngữ cho sản phẩm của mình
Ta tìm hiểu DBMS trên một HQCSDL cụ thể: SQL Server 2000. Do vậy chương này giới thiệu cài đặt SQL Server 2000 và các thành phần của nó, giúp chúng ta chủ động khai thác trong nắm bắt và tạo lập ứng dụng.
Tổng quan về DBMS
Tổng quan về cơ sở dữ liệu quan hệ
Các bảng trong một cơ sở dữ liệu
Bảng MONHOC với khoá chính là MAMONHOC
Mối quan hệ giữa hai bảng LOP và KHOA trong cơ sở dữ liệu
Giới Thiệu SQL Server 2000
SQL Server 2000 là một hệ thống quản trị cơ sở dữ liệu quan hệ (Relational Database Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQL Server computer. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.
SQL Server 2000 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server 2000 có thể kết hợp “ăn ý” với các server khác như Microsoft InternetInformation Server (IIS), E-Commerce Server, Proxy Server….
Cài Ðặt SQL Server 2000 (Installation)
Ta cần có Developer Edition và ít nhất là 64 MB RAM, 500 MB hard disk để có thể install SQL Server. Có thể install trên Windows Server hay Windows XP Professional, Windows 2000 Professional hay NT Workstation nhưng không thể install trên Win 98 family.
Sơ lược về SQL
COMMIT
Uỷ thác (kết thúc thành công) giao dịch
ROLLBACK
Quay lui giao dịch
SAVE TRANSACTION
Đánh dấu một điểm trong giao dịch
DECLARE
Khai báo biến hoặc định nghĩa con trỏ
OPEN
Mở một con trỏ để truy xuất kết quả truy vấn
FETCH
Đọc một dòng trong kết quả truy vấn (sử dụng con trỏ)
EXECUTE
Thực thi một câu lệnh SQL
tên_người_sở_hữu.tên_bảng Một số kiểu dữ liệu thông dụng trong SQL
Kiếu chuỗi với độ dài cố định hỗ trợ UNICODE
Kiểu chuỗi với độ dài chính xác
Kiểu chuỗi với độ dài chính xác hỗ trợ UNICODE
INTEGER
Số nguyên có giá trị từ -231 đến 231 – 1
TINYTINT
Số nguyên có giá trị từ 0 đến 255.
SMALLINT
Số nguyên có giá trị từ -215 đến 215 – 1
BIGINT
Số nguyên có giá trị từ -263 đến 263-1
FLOAT
Số thực có giá trị từ -1.79E+308 đến 1.79E+308
REAL
Số thực có giá trị từ -3.40E + 38 đến 3.40E + 38
BIT
Kiểu bit (có giá trị 0 hoặc 1)
DATETIME
Kiểu ngày giờ (chính xác đến phần trăm của giây)
SMALLDATETIME
Kiểu ngày giờ (chính xác đến phút)
BINARY
Dữ liệu nhị phân với độ dài cố định (tối đa 8000 bytes)
VARBINARY
Dữ liệu nhị phân với độ dài chính xác (tối đa 8000 bytes)
IMAGE
Dữ liệu nhị phân với độ dài chính xác (tối đa 2,147,483,647 bytes)
TEXT
Dữ liệu kiếu chuỗi với độ dài lớn (tối đa 2,147,483,647 ký tự)
NTEXT
Dữ liệu kiếu chuỗi với độ dài lớn và hỗ trợ UNICODE (tối đa 1,073,741,823 ký tự)
Các tập tin vật lý lưu trữ cơ sở dữ liệu
Mặc dù phải quản lý nhiều đối tượng bên trong cơ sở dữ liệu nhưng Microsoft SQL Server chỉ tổ chức hai loại tập tin để lưu trữ.
Một cơ sở dữ liệu trong Microsoft SQL Server tối thiểu sẽ dùng hai (2) tập tin vật lý để lưu trữ dữ liệu:
Datafile: dùng lưu trữ dữ liệu.
Transaction log file : dùng để lưu trữ các hành động thực hiện trên cơ sở dữ liệu trong quá trình sử dụng. Các hành động thực hiện trên CSDL gọi là các giao tác.
Các loại tập tin lưu trữ dữ liệu của SQL Sever 2000
Các loại tập tin lưu trữ dữ liệu của SQL Sever 2000
Các tập tin lưu trữ cơ sở dữ liệu bên trong Microsoft SQL Server được phân chia thành ba loại tập tin vật lý khác nhau:
Tập tin dữ liệu chính (Primary Data File) : Đây là tập tin chính dùng để lưu trữ các thông tin hệ thống của cơ sở dữ liệu và phần còn lại dùng lưu trữ một phần dữ liệu. Phần mở rộng của tập tin này thông thường là *.MDF.
Tập tin dữ liệu thứ yếu(Secondary Data Files) : Đây là tập tin dùng lưu trữ các đối tượng dữ liệu không nằm trong tập tin dữ liệu chính. Loại tập tin này không bắt buộc phải có khi tạo mới cơ sở dữ liệu. Phần mở rộng của tập tin này thông thường là *.NDF.
Tập tin lưu vết (Log Files): Đây là tập tin dùng lưu vết các giao tác – là những hành động cập nhật dữ liệu (thêm, sửa, xóa) vào các bảng do người sử dụng tác động trên cơ sở dữ liệu. Tập tin sẽ này hỗ trợ cho phép các bạn có thể hủy bỏ (rollback) các thao tác cập nhật dữ liệu đã được thực hiện hay giúp SQL Server phục hồi dữ liệu trong các trường hợp gặp sự cố như mất điện,… Phần mở rộng của tập tin này thông thường là *.LDF.
Kết chương
Như vậy, SQL (viết tắt của StructuredQueryLanguage) là hệ thống ngôn ngữ được sử dụng cho các hệ quản trị cơ sở dữ liệu quan hệ. Thông qua SQL có thể thực hiện được các thao tác trên cơ sở dữ liệu như định nghĩa dữ liệu, thao tác dữ liệu, điều khiển truy cập, quản lý toàn vẹn dữ liệu… SQL là một thành phần quan trọng và không thể thiếu trong hệ quản trị cơ sở dữ liệu quan hệ.
SQL ra đời nhằm sử dụng cho các cơ sở dữ liệu theo mô hình quan hệ. Trong một cơ sở dữ liệu quan hệ, dữ liệu được tổ chức và lưu trữ trong các bảng. Mỗi một bảng là một tập hợp bao gồm các dòng và các cột; mỗi một dòng là một bản ghi và mỗi một cột tương ứng với một trường, tập các tên cột cùng với kiểu dữ liệu và các tính chất khác tạo nên cấu trúc của bảng, tập các dòng trong bảng chính là dữ liệu của bảng.
Các bảng trong một cơ sở dữ liệu có mối quan hệ với nhau. Các mối quan hệ được biểu diễn thông qua khoá chính và khoá ngoài của các bảng. Khoá chính của bảng là tập một hoặc nhiều cột có giá trị duy nhất trong bảng và do đó giá trị của nó xác định duy nhất một dòng dữ liệu trong bảng. Một khoá ngoài là một tập một hoặc nhiều cột có giá trị được xác định từ khoá chính của các bảng khác.