Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm)

Giới thiệu: hệ quản trị cơ sở dữ liệu SQL

Mục tiêu: Trình bày hệ quản trị cơ sở dữ liệu SQL Server. Mô tả cách thức quản trị

trên hệ CSDL SQL. Trình bày cách thức quản trị và bảo mật trên SQL server.

1.1. Giới thiệu hệ quản trị cơ sở dữ liệu SQL server

SQL Server là hệ thống quản trị cơ sở dữ liệu quan hệ (Relational DataBase

Management System- RDBMS) sử dụng các lệnh giao chuyển Transaction-SQL để

trao đổi dữ liệu giữa Client Computer và Server Computer.

1.1.1. SQL là ngôn ngữ cơ sở dữ liệu quan hệ

SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu trúc), là công cụ

sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu.

SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ

sở dữ liệu quan hệ.

Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng đến một công

cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu. Thực sự mà nói, khả

năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích

ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trong những

chức năng quan trọng của nó. SQL được sử dụng để điều khiển tất cả các chức năng

mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:

- Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các

cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ

liệu.

- Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện

các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ

liệu.

- Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các

thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu

- Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở

dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác

cập nhật cũng như các lỗi của hệ thống.

Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trong các

hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị cơ sở

dữ liệu. Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java,. song

các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình

nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu.

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 1

Trang 1

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 2

Trang 2

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 3

Trang 3

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 4

Trang 4

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 5

Trang 5

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 6

Trang 6

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 7

Trang 7

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 8

Trang 8

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 9

Trang 9

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm) trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 142 trang xuanhieu 3760
Bạn đang xem 10 trang mẫu của tài liệu "Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm)

Giáo trình Hệ quản trị cơ sở dữ liệu - Ngành: Hệ thống thông tin, thiết kế trang web, công nghệ thông tin (Ứng dụng phần mềm)
........................................................... 16 
Hình 2. 1 Bảng ............................................................................................................... 20 
Hình 2. 2 Bảng Môn Học .............................................................................................. 21 
Hình 2. 3 Mối quan hệ giữa hai bảng LOP và KHOA trong cơ sở dữ liệu ................... 22 
Hình 3. 1 Bảng trong cơ sở dữ liệu quan hệ .................................................................. 27 
Hình 3. 2 Dữ liệu bảng Nhân Viên ................................................................................ 30 
Hình 3. 3 Mối quan hệ giữa các bảng ............................................................................ 34 
Hình 3. 4 Khung nhìn DSSV với dữ liệu được lấy từ bảng SINHVIEN và LOP ......... 39 
Hình 3. 5 Khung nhìn DSSV ......................................................................................... 41 
Hình 3. 6 Khung nhìn dsv .............................................................................................. 42 
Hình 3. 7 Bảng Đơn Vị và Nhân Viên .......................................................................... 44 
Hình 3. 8 Bảng Nhân viên có bổ sung thông tin .......................................................... 44 
Hình 4. 1 Hiển thị danh sách các Khoa ......................................................................... 55 
Hình 4. 2 Hiển thị danh sách lớp ................................................................................... 56 
Hình 4. 3 Hiển thị một số cột trong bảng lớp ................................................................ 57 
Hình 4. 4 Hiển thị tiêu đề cột của bảng Lớp ................................................................. 58 
Hình 4. 5 Thông tin không còn trùng lắp ...................................................................... 59 
Hình 4. 6 Lọc thông tin họ ‘Lê’ bảng Sinh Viên ........................................................... 63 
Hình 4. 7 Hiển thị thông tin bảng Môn học sắp xếp giảm dần theo cột sdvht .............. 64 
Hình 4. 8 bảng sinh viên được sắp xếp theo giới tính, tuổi ........................................... 65 
Hình 4. 9 Bảng Khoa và Bảng Lớp ............................................................................... 65 
Hình 4. 10 Mối quan hệ giữa các bảng .......................................................................... 66 
Hình 4. 11 Sỉ số sinh viên của từng lớp ......................................................................... 72 
KHOA CÔNG NGHỆ THÔNG TIN Trang 126 
Hình 4. 12 Bảng Nhật ký phòng .................................................................................... 78 
Hình 4. 13 Bảng Nhật ký phòng được cập nhật tiền phòng .......................................... 79 
Hình 4. 14 Quan hệ bảng Mặt hàng và bảng Nhật ký bán hàng .................................... 79 
Hình 5. 1 Đường dẫn Import Data ................................................................................. 84 
Hình 5. 2 Chọn Data source để import dữ liệu .............................................................. 85 
Hình 5. 3 Chọn Destination ........................................................................................... 85 
Hình 5. 4 Chọn bảng ...................................................................................................... 86 
Hình 5. 5 Finish ............................................................................................................. 86 
Hình 5. 6 Chờ chạychương trình ................................................................................... 87 
Hình 5. 7 Thành công .................................................................................................... 87 
Hình 5. 8 Đường dẫn Export data .................................................................................. 88 
Hình 5. 9 Chọn nguồn database ..................................................................................... 89 
Hình 5. 10 Chọn Destination ......................................................................................... 89 
Hình 5. 11 Chọn dữ liệu từ 1 hoặc nhiều bảng .............................................................. 90 
Hình 5. 12 Chọn các bảng ............................................................................................. 91 
Hình 5. 13 Finish ........................................................................................................... 91 
Hình 5. 14 Chờ chương trình chạy ................................................................................ 92 
Hình 5. 15 Import thành công ........................................................................................ 92 
Hình 5. 16 Khôi phục giao dịch ..................................................................................... 94 
Hình 5. 17 Bắt đầu backup ............................................................................................ 95 
Hình 5. 18 Xuất hiện giao dịch ...................................................................................... 95 
Hình 5. 19 Cập nhật giao dịch ....................................................................................... 95 
Hình 5. 20 Mô tả sao lưu xong phần dữ liệu, chép tiềp phần transaction log ............... 96 
Hình 5. 21 Khi có yêu cầu khôi phục ........................................................................... 96 
Hình 5. 22 SQL Server khôi phục tiếp phần transaction log ......................................... 97 
Hình 5. 23 Đường dẫn Back Up .................................................................................... 98 
Hình 5. 24 Kết thúc Back Up ........................................................................................ 98 
Hình 5. 25 Đường dẫn Restore database ....................................................................... 99 
Hình 5. 26 Chọn database Restore ................................................................................ 99 
Hình 5. 27 Chọn thẻ Option ........................................................................................ 100 
Hình 5. 28 Đường dẫn Detach ..................................................................................... 100 
Hình 5. 29 Detach thành công ..................................................................................... 101 
Hình 5. 30 Chọn 2 file chép sang vị trí khác ............................................................... 101 
Hình 5. 31 Đường dẫn Attach ..................................................................................... 102 
Hình 5. 32 chỉ đường dẫn đến fie mdf ......................................................................... 102 
Hình 6. 1 Sử dụng hàm thu(ngaysinh) ......................................................................... 112 
Hình 6. 2 Thống kê tổng số sinh viên khoá 25 ở mỗi khoa ......................................... 115 
KHOA CÔNG NGHỆ THÔNG TIN Trang 127 
DANG MỤC BẢNG 
Bảng 1. 1 Tập tin của CSDL SQL ................................................................................. 10 
Bảng 1. 2 các kiểu page ................................................................................................. 10 
Bảng 2. 1 Câu lệnh SQL ................................................................................................ 22 
Bảng 2. 2 Một số kiểu dữ liệu thông dụng được sử dụng trong SQL ........................... 24 
Bảng 3. 1 Các thuộc tính của câu lệnh tạo bảng ............................................................ 28 
Bảng 4. 1 các toán tử so sánh ........................................................................................ 61 
Bảng 4. 2 toán tử between và not between .................................................................... 61 
Bảng 4. 3 toán tử like và các ký tự đại diện .................................................................. 62 
Bảng 4. 4 Các hàm gộp SQL ........................................................................................ 71 
Bảng 6. 1 Các thuộc tính của cú pháp tạo thủ tục ....................................................... 105 
KHOA CÔNG NGHỆ THÔNG TIN Trang 128 
PHỤ LỤC 
A. Cơ sở dữ liệu mẫu sử dụng trong giáo trình 
Trong toàn bộ nội dung giáo trình, hầu hết các ví dụ được dựa trên cơ sở dữ liệu 
mẫu được mô tả dưới đây. Cơ sở dữ liệu này được cài đặt trong hệ quản trị cơ sở dữ 
liệu SQL Server và được sử dụng để quản lý sinh viên và điểm thi của sinh viên. 
Cơ sở dữ liệu bao gồm các bảng sau đây: 
- Bảng KHOA lưu trữ dữ liệu về các khoa hiện có ở trong trường 
- Bảng LOP bao gồm dữ liệu về các lớp trong trường 
- Bảng SINHVIEN được sử dụng để lưu trữ dữ liệu về các sinh viên trong 
trường. 
- Bảng MONHOC bao gồm các môn học (học phần) được giảng dạy trong trường 
- Bảng DIEMTHI với dữ liệu cho biết điểm thi kết thúc môn học của các sinh 
viên 
Mối quan hệ giữa các bảng được thể hiện qua sơ đồ dưới đây: 
CREATE TABLE khoa 
( 
makhoa NVARCHAR(5) NOT NULL 
CONSTRAINT pk_khoa PRIMARY KEY, 
tenkhoa NVARCHAR(50) NOT NULL , 
dienthoai NVARCHAR(15) NULL 
) 
CREATE TABLE lop 
( 
malop NVARCHAR(10) NOT NULL 
CONSTRAINT pk_lop PRIMARY KEY, 
KHOA CÔNG NGHỆ THÔNG TIN Trang 129 
tenlop NVARCHAR(30) NULL , 
khoa SMALLINT NULL , 
hedaotao NVARCHAR(25) NULL , namnhaphoc INT NULL , 
siso INT NULL , 
makhoa NVARCHAR(5) NULL 
) 
CREATE TABLE sinhvien 
( 
masv NVARCHAR(10) NOT NULL 
CONSTRAINT pk_sinhvien PRIMARY KEY, 
hodem NVARCHAR(25) 
ten NVARCHAR(10) NOT NULL , 
ngaysinh SMALLDATETIME NULL, 
gioitinh BIT NULL, 
noisinh NVARCHAR(100) NULL, 
malop NVARCHAR(10) NULL 
) 
CREATE TABLE Monhoc ( 
mamonhoc NVARCHAR(10) NOT NULL 
 CONSTRAINT pk_monhoc PRIMARY KEY, 
tenmonhoc NVARCHAR(50) NOT NULL , 
sodvht SMALLINT NOT NULL 
) 
CREATE TABLE diemthi 
( 
mamonhoc NVARCHAR(10) NOT NULL , 
masv NVARCHAR(10) NOT NULL , 
diemlan1 NUMERIC(5, 2) NULL , 
diemlan2 NUMERIC(5, 2) NULL, 
CONSTRAINT pk_diemthi PRIMARY KEY(mamonhoc,masv) 
) 
ALTER TABLE lop 
ADD 
CONSTRAINT fk_lop_khoa 
FOREIGN KEY(makhoa) 
KHOA CÔNG NGHỆ THÔNG TIN Trang 130 
REFERENCES khoa(makhoa) 
ON DELETE CASCADE 
ON UPDATE CASCADE 
ALTER TABLE sinhvien 
ADD 
CONSTRAINT 
fk_sinhvien_lop 
FOREIGN KEY (malop) 
REFERENCES lop(malop) 
ON DELETE CASCADE 
ON UPDATE CASCADE 
ALTER TABLE diemthi 
ADD 
CONSTRAINT fk_diemthi_monhoc 
FOREIGN KEY (mamonhoc) 
REFERENCES monhoc(mamonhoc) 
ON DELETE CASCADE 
ON UPDATE CASCADE, 
CONSTRAINT fk_diemthi_sinhvien 
FOREIGN KEY (masv) 
REFERENCES sinhvien(masv) 
ON DELETE CASCADE 
ON UPDATE CASCADE 
ALTER TABLE monhoc 
ADD 
CONSTRAINT chk_monhoc_sodht 
CHECK(sodvht>0 and sodvht<=5) 
ALTER TABLE diemthi 
ADD 
CONSTRAINT chk_diemthi_diemlan1 
CHECK (diemlan1>=0 and diemlan1<=10), 
CONSTRAINT chk_diemthi_diemlan2 
CHECK (diemlan2>=0 and diemlan2<=10) 
B. Một số hàm thường sử dụng 
Mặc dù trong SQL chuẩn không cung cấp cụ thể các nhưng trong các hệ quản trị cơ 
sở dữ liệu luôn cung cấp cho người sử dụng các hàm cài sẵn (hay còn gọi là các hàm 
của hệ thống). Trong phần này, chúng tôi cung cấp một số hàm thường được sử dụng 
trong SQL Server để tiện cho việc tra cứu và sử dụng trong thực hành 
KHOA CÔNG NGHỆ THÔNG TIN Trang 131 
B.1.Các hàm trên dữ liệu kiểu chuỗi 
Hàm ASCII 
ASCII(string) 
Hàm trả về mã ASCII của ký tự đầu tiên bên trái của chuỗi đối số 
Hàm CHAR 
CHAR(ascii_code) 
Hàm trả về ký tự có mã ASCII tương ứng với đối số 
Hàm CHARINDEX 
CHARINDEX(string1,string2[,start]) 
Hàm trả về vị trí đầu tiên tính từ vị trí start tại đó chuỗi string1 xuất hiện trong 
chuỗi string2. 
Hàm LEFT 
LEFT(string,number) 
Hàm trích ra number ký tự từ chuỗi string tính từ phía bên trái 
Hàm LEN 
LEN(string) 
Hàm trả về độ dài của chuỗi string. 
Hàm LOWER 
LOWER(string) 
Hàm có chức năng chuyển chuỗi string thành chữ thường, kết quả được trả về cho 
hàm 
Hàm LTRIM 
LTRIM(string) 
Cắt bỏ các khoảng trắng thừa bên trái chuỗi string 
Hàm NCHAR 
NCHAR(code_number) 
Hàm trả về ký tự UNICODE có mã được chỉ định 
Hàm REPLACE 
REPLACE(string1,string2,string3) 
Hàm trả về một chuỗi có được bằng cách thay thế các chuỗi string2 trong chuỗi 
string1 bởi chuỗi string3. 
Hàm REVERSE 
REVERSE(string) 
Hàm trả về chuỗi đảo ngược của chuỗi string. 
KHOA CÔNG NGHỆ THÔNG TIN Trang 132 
Hàm RIGHT 
RIGHT(string, number) 
Hàm trích ra number ký tự từ chuỗi string tính từ phía bên phải. 
Hàm RTRIM 
RTRIM(string) 
Cắt bỏ các khoảng trắng thừa bên phải của chuỗi string. 
Hàm SPACE 
SPACE(number) 
Hàm trả về một chuỗi với number khoảng trắng. 
Hàm STR 
STR(number [,length [,decimal]]) 
Chuyển giá trị kiểu số number thành chuỗi 
Hàm SUBSTRING 
SUBSTRING(string, m, n) 
Trích ra từ n ký tự từ chuỗi string bắt đầu từ ký tự thứ m. 
Hàm UNICODE 
UNICODE(UnicodeString) 
Hàm trả về mã UNICODE của ký tự đầu tiên bên trái của chuỗi UnicodeString. 
Hàm UPPER 
UPPER(string) 
Chuyển chuỗi string thành chữ hoa 
B.2. Các hàm trên dữ liệu kiểu ngày giờ 
Hàm DATEADD 
DATEADD(datepart, number, date) 
Hàm trả về một giá trị kiểu DateTime bằng cách cộng thêm một khoảng giá trị là 
number vào ngày date được chỉ định. Trong đó, datepart là tham số chỉ định thành 
phần sẽ được cộng đối với giá trị date bao gồm: 
KHOA CÔNG NGHỆ THÔNG TIN Trang 133 
Datepart Viết tắt 
year yy, yyyy 
quarter qq, q 
month mm, m 
dayofyear dy, y 
day dd, d 
week wk, ww 
hour hh 
minute mi, n 
second ss, s 
millisecond ms 
Hàm DATEDIFF 
DATEDIFF(datepart, startdate, enddate) 
Hàm trả về khoảng thời gian giữa hai giá trị kiểu này được chỉ định tuỳ thuộc vào 
tham số datepart 
Hàm DATEPART 
DATEPART(datepart, date) 
Hàm trả về một số nguyên được trích ra từ thành phần (được chỉ định bởi tham số 
partdate) trong giá trị kiểu ngày được chỉ định. 
Hàm GETDATE 
GETDATE() 
Hàm trả về ngày hiện tại 
Hàm DAY, MONTH, YEAR 
DAY(date), MONTH(date), YEAR(date) 
Hàm trả về giá trị ngày (tháng hoặc năm) của giá trị kiểu ngày được chỉ định. 
B.3. Hàm chuyển đổi kiểu 
Hàm CAST 
CAST (biểu_thức AS kiểu_dữ_liệu) 
Chuyển đổi giá trị của biểu thức sang kiểu được chỉ định 
Hàm CONVERT 
CONVERT(kiểu_dữ_liệu, biểu_thức ,kiểu_chuyển_đổi]) 
Hàm có chức năng chuyển đổi giá trị của biểu thức sang kiểu dữ liệu được chỉ định. 
Tham số kiểu_chuyển_đổi là một giá trị số thường được sử dụng khi chuyển đổi giá trị 
kiểu ngày sang kiểu chuỗi nhằm qui định khuôn dạng dữ liệu được hiển thị và được 
qui định như sau: 
KHOA CÔNG NGHỆ THÔNG TIN Trang 134 
Năm 2 chữ số Năm 4 chữ số Khuôn dạng dữ liệu 
0 hoặc 100 mon dd yyyy hh:mi AM (PM) 
1 101 mm/dd/yy 
2 102 yy.mm.dd 
3 103 dd/mm/yy 
4 104 dd.mm.yy 
5 105 dd-mm-yy 
6 106 dd mon yy 
7 107 Mon dd, yy 
8 108 hh:mm:ss 
9 109 mon dd yyyy hh:mi:ss:mmmAM (PM) 
10 110 mm-dd-yy 
11 111 yy/mm/dd 
12 112 yymmdd 
13 113 dd mon yyyy hh:mm:ss:mmm(24h) 
14 114 hh:mi:ss:mmm(24h) 

File đính kèm:

  • pdfgiao_trinh_he_quan_tri_co_so_du_lieu_nganh_he_thong_thong_ti.pdf