CHƯƠNG 1

Giảng viên: Trần Thị Kim Chi

1

1

Tổng quan về Cơ Sở Dữ Liệu quan hệ

2

Hệ Quản Trị Cơ Sở Dữ Liệu

3

Giới thiệu SQL Server

SQL Server Services & Tools

4

5

Giới thiệu SQL Server 2008

6

Bộ công cụ Management Studio

7

Metadata – Siêu dữ liệu

2

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

ữ ệ Data (d  li u) và information (thông tin)

 Dữ liệu có cấu trúc: số, ngày, chuỗi ký tự, …  Dữ liệu không có cấu trúc: hình ảnh, âm thanh,

– Data: sự biểu diễn của các đối tượng và sự kiện được ghi nhận và được lưu trữ trên các phương tiện của máy tính.

đoạn phim, …

– Information: dữ liệu đã được xử lý để làm tăng sự

hiểu biết của người sử dụng.

3

Phân biệt giữa data và information??

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

10273 00298

CDTH7 CDTH7

20 19

Nguyễn Văn Hoà Nguy n Minh Tâm

ươ

ng

Dữ liệu 1 2 … 151 152

50542 50075

TCTH33 CNTH34

18 20

Hồ Xuân Ph Lê Vi ệ

t Dũng

ữ ệ

ữ ả ọ Mã sinh viên H  và tên sinh viên 10273 00298

L pớ CDTH7 CDTH7

Tu iổ 20 19

Nguyễn Văn Hoà Nguy n Minh Tâm

ươ

ng

Thông tin: d  li u trong ng  c nh STT 1 2 … 151 152

50542 50075

TCTH33 CNTH34

18 20

Hồ Xuân Ph Lê Vi ệ

t Dũng

4

ữ ệ Data (d  li u) và information (thông tin)

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

5

ữ ệ Data (d  li u) và information (thông tin)

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

• Siêu dữ liệu (metadata): mô tả các tính chất hoặc các đặc điểm của dữ liệu khác. Các đặc tính là định nghĩa dữ liệu, cấu trúc dữ liệu, qui tắc/ràng buộc.

ữ ệ Data (d  li u) và information (thông tin)

Length 5 30

Type Char Char

Description Mã sinh viên H   vàọ

tên sinh

7

Siêu dữ liệu cho Sinh_viên Data Item Value Name MaSV Hoten viên Lop Tuoi

Char smallint

Lớp h cọ Tuổi

6

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

ơ ở ữ ệ C  s  d  li u

 Cơ sở dữ liệu là một tập hợp dữ liệu có liên quan luận lý với nhau chứa thông tin về 1 tổ chức nào đó, có tổ chức và được dùng chung đáp ứng nhu cầu khai thác thông tin của người dùng.

ươ

Ch

ứ ng trình  ng d ng 1

ơ ở ữ ệ C  s  d  li u

ươ

Ch

ứ ng trình  ng d ng 2

ươ

ng

ườ ử ụ

Ng

i s  d ng khai thác

ệ ố Các h  th ng ch ụ ứ trình  ng d ng khai thác

7

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

ơ ở ữ ệ ủ ể ặ Đ c đi m c a C  s  d  li u

– Dữ liệu được lưu trữ trong bộ nhớ ổn định như đĩa cứng. Khi dữ

liệu không cần dùng nữa thì có thể xoá hay sao lưu lại.

• Persistent:

nối với nhau để tạo 1 tổng thể chung

– Database vừa chứa thực thể và cả mối quan hệ giữa các thực

thể

Interrelated: – Dữ liệu được lưu trữ như những đơn vị riêng biệt và được kết

– Database có thể có nhiều người dùng và nhiều người dùng có

thể sử dụng cùng 1 database tại cùng 1 thời điểm.

– Bài toán đồng thời (concurrency problem)

8

• Shared:

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Ư ể ơ ở ữ ệ ủ u đi m c a C  s  d  li u

– Giảm bớt sự dư thừa dữ liệu

– Nhất quán dữ liệu

– Dữ liệu lưu trữ có thể được chia sẻ

– Có thể thiết lập các luật lên dữ liệu

– Toàn vẹn dữ liệu

9

– Bảo mật dữ liệu

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Các hệ thống CSDL

• Các CSDL được dùng để lưu trữ dữ liệu một cách hiệu quả và có tổ chức sao cho quản lý được nhanh chóng và dễ dàng.

– Giảm bớt sự dư thừa dữ liệu

– Nhất quán dữ liệu

– Dữ liệu lưu trữ có thể được chia sẻ

– Có thể thiết lập các luật lên dữ liệu

– Toàn vẹn dữ liệu

10

– Bảo mật dữ liệu

• Các ưu điểm của các hệ thống CSDL:

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Các hệ thống CSDL

• Các CSDL có thể khác nhau về chức năng và mô hình

của dữ liệu.

• Một mô hình dữ liệu mô tả một bộ chứa dữ liệu, xử lý

11

và truy xuất dữ liệu từ bộ chứa.

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Mô hình phân cấp

12

• Mô hình CSDL phân cấp được biểu diễn dưới dạng cây và các đỉnh của cây là các bản ghi. Các bản ghi liên kết với nhau theo mối quan hệ cha-con. – Một cha có nhiều con – Một con chỉ có một cha

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

13

Mô hình phân cấp

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Mô hình phân cấp

– Thể hiện dễ dàng quan hệ 1-N. – Việc phân chia dữ liệu dễ thể hiện, đảm bảo an toàn dữ

liệu

– Tính độc lập của chương trình và các dữ liệu được đảm

bảo • Nhược điểm:

– Không thể hiện được mối quan hệ M-N – Trong một hệ thống phân cấp, dữ liệu được tổ chức như

trên dẫn đến khó sửa đổi dữ liệu.

14

• Ưu điểm:

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Mô hình mạng

• Mô hình phân cấp là tập con của mô hình mạng. • Mô hình mạng sử dụng kiến trúc cây phân cấp và cho

phép các bảng con có thể có nhiều bảng cha.

15

• Dữ liệu được lưu trữ trong các bộ thay vì lưu trong định dạng cây phân cấp. Điều này giải quyết vấn đề dư thừa dữ liệu.

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

16

Mô hình mạng

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Mô hình mạng

- Dễ thể hiện mối liên kết M-N - Kiểu truy cập dữ liệu mềm dẻo hơn kiểu phân cấp

• Ưu điểm:

- Việc sửa đổi số liệu khó khăn. - Với những lập trình viên, việc thiết kế CSDL khó.

17

• Nhược điểm:

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

18

Mô hình thực thể kết hợp

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Relational Data Model

Relational Database Entities

Stud ent Stud ent Id Id

Name Name

Suburb Suburb

Ta ke s Ta ke s SID SID

SNO SNO

1108 1108

Ro b ert Ro b ert

Ke w Ke w

1108 1108

21 21

3936 3936

Gle n Gle n

Bund o ora Bund o ora

1108 1108

23 23

8507 8507

Norm a n Norm a n

Bund o ora Bund o ora

8507 8507

23 23

8452 8452

Ma ry Ma ry

Ba lw yn Ba lw yn

8507 8507

29 29

Sub jec t Sub jec t

Attributes

No No

Name Name

Dept Dept

21 21

Syste m s Syste m s

CSC E CSC E

23 23

Da ta b a se Da ta b a se

CSC E CSC E

29 29

VB VB

CSC E CSC E

18 18

Alg eb ra Alg eb ra

Ma ths Ma ths

19

Relationship

Mô hình quan hệ

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Entities

Tables

Attributes

Fields

20

Relations

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Student

Id

Name

Suburb

1108

Robert

Kew

3936

Glen

Bundoor a

•    Database:  a  collection  of  tables.

8507

Norman Bundoor

a

8452

Mary

Balwyn

•  Table:  information  about  a  single entity

•Primary key: (set of) column(s)  that uniquely identifies a record.

Takes SID

SNO

1108

21

1108

23

8507

23

21

8507

29

•Foreign key: (set of) column(s)  used to link table together

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

LOP

SINHVIEN

MALOP

TENLOP

SISO

TCTHA

TCTH32A

80

MASV

TEN

MALOP

TCTHB

TCTH32B

65

TCTH01

Sơn

TCTHA

TCTHC TCTH32C

82

TCTH02

Bảo

TCTHB

KETQUA

TCTH03

Trang

TCTHA

MASV

MAMH DIEM

MONHOC

TCTH01

THVP

8

MAMH

TENMH

TINCHI KHOA

TCTH01

CSDL

6

THVP

Nhập môn TH 4

CNTT

TCTH01

CTDL

7

TCTH02

THVP

9

CSDL

4

CNTT

Cấu trúc dữ liệu

TCTH02

CSDL

8

CTDL

Toán rời rạc

3

TOAN

TCTH03

THVP

22 10

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Ví dụ: Để quản lý hóa đơn bán hàng ta cần xây dựng một

CSDL gồm các bảng sau :

• SanPham: Mô tả các thông tin về sản phẩm như Masp,

Tensp, Donvitinh, DongiaMua, Slton.

• KhachHang: Mô tả các thông tin về khách hàng như

Makh, Tenkh, Diachi, DienThoai.

• Nhanvien: Mô tả các thông tin về nhân viên như Manv, Honv, Tennv, Phai, Ngaysinh, Diachi, DienThoai, Hinh. • Hoá đơn: Mô tả các thông tin về hóa đơn như Mahd, LoaiHD, Makh, Manv, NgaylapHD, NgayGiaoNhanHang, DienGiai.

• Chitiethoadon: Mô tả các thông tin chi tiết của từng hóa

23

đơn như Mahd, Masp, Soluong, DongiaBan.

1

24

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

1

25

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

1

26

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Mô hình đối tượng

• Đối tượng có thể chứa các dữ liệu phức hợp như văn

bản, hình ảnh, tiếng nói và hình ảnh động.

• Một đối tượng có thể yêu cầu hoặc xử lý dữ liệu từ một đối tượng khác bằng việc gửi đi một thông báo đến đối tượng đó.

• Mô hình hướng đối tượng biểu diễn một sơ đồ mới để

lưu trữ và thao tác dữ liệu.

27

• Từ một đối tượng có thể sinh ra một đối tượng khác.

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

28

Mô hình đối tượng

1

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Bài tập Bài tập

Việc quản lý nhân viên của một công ty như sau: •Công ty gồm nhiều nhân viên, mỗi nhân viên có một MANV duy nhất, mỗi MANV xác định Hoten, Phai, NgaySinh, Phongban. Mỗi nhân viên chỉ do một phòng ban quản lý. •Mỗi phòng ban có một MAPB duy nhất, mỗi MAPB xác dịnh TenPB, DiaDiem, MaTP (Mã người phụ trách), KPHD(Kinh phí hoạt động), DT (Doanh thu của từng phòng ban). •Nhân viên được chia làm hai loại nhân viên. Nhân viên hành chánh và nhân viên tham gia sản xuất. Nhân viên hành chánh làm việc theo giờ hành chánh. Nhân viên tham gia sản xuất thì làm nhiều công việc khác nhau. •Mỗi công việc có một mã MACV, Macv xác định TENCV, DONGIA. Công ty có tối đa 3 công việc. •Hàng tháng công ty chấm công cho nhân viên để tính lương cho nhân viên như sau:

– Nhân viên hành chánh chấm theo số ngày làm trong tháng. Mỗi nhân viên một tháng phải làm tối thiểu 25 ngày công. Lương tháng được tính theo công thức: SoNC*LCB +Thuong – Nhân viên sản xuất thì sẽ chấm công theo số lượng của mỗi công việc trong một tháng. Mỗi nhân viên phải làm ít nhất một công việc trong một tháng. Mỗi công việc số lượng 29 nhân viên làm phải lớn hơn 10. Lương tháng được tính theo công thức: Tổng SoLuong*Dongia của mỗi công việc +Thuong

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Bài tập Bài tập

Câu hỏi: •Xây dựng mô hình thực thể kết hợp gồm: Xác định các thực thể, thuộc tính, khóa, các mối kế hợp và vẽ mô hình thực thể kết hợp •Chuyển mô hình thực thể về lược đồ cơ sở dữ liệu quan hệ và xác định các khóa •Xác định các mối quan hệ và các ràng buộc của lược đồ cơ sở dữ liệu trên

30

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Cách tiếp cập CSDL Cách tiếp cập CSDL

ươ ng trình  Các ch ấ khai báo c u trúc

Ngôn  ngữ mô   ả t d  ữ li uệ

CSDL

Các từ đi n ể d  ữ li uệ

NSD

Ch ứ

ươ ng trình  ụ ng d ng A

Ngôn  ngữ thao  tác d  ữ li uệ

NPTUD

31

NQTCSDL

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

1. Người quản trị CSDL

– Quản lý sự chính xác, toàn vẹn của dữ liệu và ứng dụng. – Lưu phòng hờ và phục hồi CSDL. – Giữ liên lạc với người PTUD và người dùng chung. – Quản lý sự hoạt động trôi chảy và hiệu quả của CSDL và

HQTCSDL. 2. Người PTUD

– Thiết kế, tạo dựng và bảo trì hệ thông tin cho người sử

dụng. 3. Người sử dụng:

– Tương tác với CSDL thông qua chương trình ứng dụng (application program) được phát triển bởi người PTUD hay các công cụ truy vấn của hệ QTCSDL.

– Có thể nhìn thấy dữ liệu họ cần thông qua khung nhìn (View 32

- tiện ích của DBMS)

Cách tiếp cập CSDL Cách tiếp cập CSDL

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Qui trình phát triển CSDL Qui trình phát triển CSDL

• Gồm 6 giai đoạn sau:

– Mô hình hóa xí nghiệp (Enterprise modeling) – Mô hình hóa dữ liệu ý niệm (Conceptual data

modeling)

– Thiết kế Database luận lý (logical database design) – Thiết kế và định nghĩa database vật lý (physical

database design and definition)

33

– Thực hiện database (database implementation) – Bảo trì database (database maintenance)

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

SVIEN

Cấu trúc dữ liệu trong Lược đồ Quan niệm

MASV HOTENSV

PHAI

MALOP

LOP

MALOP

TENLOP

SISO

MONHOC

MAMH

TENMH

TINCHI SOTIET

KETQUA

MASV

MAMH

DIEM

34

1

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Cấu trúc Dữ liệu trong Lược đồ Vật lý

Vị trí bắt đầu

Tên mục dữ liệu

Độ dài (bytes)

TEN

1

30

MASV

31

4

PHAI

35

4

MAKH

39

4

• Tổ chức vật lý các mẫu tin SVIEN

35

– chiều dài của mẫu tin SVIEN = 42 bytes – được sắp xếp và lập chỉ mục trên MASV

1 1

ộ ệ ủ ế ế Ki n Trúc C a M t H  QTCSDL Ki n trúc Database

Kiến trúc ba mức Kiến trúc ba mức

External level

User view 1

User view 2

User view 3

Conceptual level

Conceptual  schema

Internal level

Internal schema

Physical database  organization

Database

36

Database System

1 1

ộ ệ ủ ế ế Ki n trúc Database Ki n Trúc C a M t H  QTCSDL

1. Mức trong: • Đây là mức lưu trữ CSDL. Tại mức này, vấn đề cần giải quyết là, dữ liệu gì và được lưu trữ như thế nào? ở đâu (đĩa từ, băng từ, track, sector ... nào)? Cần các chỉ mục gì? Việc truy xuất là tuần tự (Sequential Access) hay ngẫu nhiên (Random Access) đối với từng loại dữ liệu.

Kiến trúc ba mức Kiến trúc ba mức

37

• Những người hiểu và làm việc với CSDL tại mức này là người quản trị CSDL (Administrator), những người sử dụng (NSD) chuyên môn.

1 1

ế ế ệ ủ Ki n Trúc Database Ki n Trúc C a H  QTCSDL

Kiến trúc ba mức Kiến trúc ba mức

2. Mức quan niệm: • Tại mức này sẽ giải quyết cho câu hỏi CSDL cần phải lưu giữ bao nhiêu loại dữ liệu? đó là những dữ liệu gì? Mối quan hệ giữa các loại dữ liệu này như thế nào?

• CSDL mức quan niệm là một sự biểu diễn trừu tượng CSDL mức vật lý; hoặc ngược lại, CSDL vật lý là sự cài đặt cụ thể của CSDL mức quan niệm.

• Làm việc tại mức này có các nhà chuyên môn, các kỹ

38

sư tin học

1

ế Ki n Trúc Database

Kiến trúc ba mức Kiến trúc ba mức

3. Mức ngoài: • Đó là mức của người sử dụng và các chương trình ứng dụng. Làm việc tại mức này có các nhà chuyên môn, các kỹ sư tin học và những người sử dụng không chuyên.

39

• Người sử dụng hay chương trình ứng dụng có thể hoàn toàn không được biết về cấu trúc tổ chức lưu trữ thông tin trong CSDL, thậm chí ngay cả tên gọi của các loại dữ liệu hay tên gọi của các thuộc tính. Họ chỉ có thể làm việc trên một phần CSDL theo cách "nhìn" do người quản trị hay chương trình ứng dụng quy định, gọi là khung nhìn (View).

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Hệ quản trị CSDL Hệ quản trị CSDL

• CSDL đặt ra vấn đề cần giải quyết là

– Tính chủ quyền – Cơ chế bảo mật hay phân quyền hạn khi khai thác

dữ liệu.

– Cung cấp một giao diện giữa người sử dụng và dữ

liệu.

– Phục hồi dữ liệu khi có sự cố xảy ra

ầ ế ấ ả  Ph n m m có kh  năng gi ề i quy t các v n đ

40

ả ả ị ơ ở ữ ệ ề ệ trên là h  qu n tr  c  s  d  li u

2

ơ ả ổ ệ ệ ề T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Hệ quản trị CSDL Hệ quản trị CSDL

• Hệ quản trị CSDL (DBMS – DataBase Management

System) – Hệ quản trị CSDL là tập hợp các chương trình, phần mềm dùng để quản lý cấu trúc và dữ liệu của CSDL và điều khiển truy xuất dữ liệu trong CSDL. – Cho phép người sử dụng định nghĩa, tạo lập, bảo

trì CSDL và cung cấp các truy xuất dữ liệu.

– Cung cấp một giao diện giữa người sử dụng và dữ

41

liệu.

2

ơ ả ổ ệ ề ệ T ng quan v  CSDL quan h  ­ Các khái ni m c  b n

Hệ quản trị CSDL Hệ quản trị CSDL

• Các chức năng của hệ quản trị CSDL

– Lưu trữ, truy xuất và cập nhật dữ liệu

• Ngôn ngữ định nghĩa dữ liệu (DDL - Data Definition Language) • Ngôn ngữ thao tác dữ liệu (DML - Data Manipulation Language).

– Quản lý giao tác (transaction management). – Điều khiển đồng thời (concurrency control) – Sao lưu và phục hồi dữ liệu. – Bảo mật dữ liệu

• Ngôn ngữ điều khiển dữ liệu (DCL - Data Control Language).

– Hỗ trợ truyền thông dữ liệu. – Duy trì tính toàn vẹn / nhất quán dữ liệu. – Cung cấp các tiện ích.

42

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Hệ quản trị CSDL Hệ quản trị CSDL

• Ngôn ngữ định nghĩa dữ liệu: Tạo cấu trúc của bảng SinhVien

CREATE TABLE SinhVien (MaSV NUMBER(7,0) NOT NULL, HoTen VARCHAR(25) NOT NULL, DiaChi VARCHAR(30), NoiSinh VARCHAR(20), CONSTRAINT PK_SinhVien PRIMARY KEY (MaSV));

• Ngôn ngữ thao tác dữ liệu: Liệt kê mã, tên và địa chỉ của các SV ở

‘HCM’ SELECT MaSV, HoTen, DiaChi FROM SinhVien WHERE NoiSinh = ‘HCM’;

• Ngôn ngữ điều khiển dữ liệu: Cho phép người sử dụng A và B được

43

phép xem và thêm dữ liệu vào bảng SinhVien GRANT SELECT, INSERT ON SinhVien TO A,B;

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

• Một hệ quản trị CSDL quan hệ (RDBMS) là một hệ quản trị

CSDL được xây dựng trên mô hình quan hệ.

• Một CSDL quan hệ là một CSDL được chia nhỏ thành các đơn vị logic gọi là bảng, các bảng có quan hệ với nhau trong CSDL.

Hệ quản trị CSDL quan hệ (RDBMS)

Quan hệ

Bảng 2 Khóa

Bảng 1 Khóa

CSDL

Dữ liệu...

Dữ liệu...

44

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

DBMS

RDBMS

Nó không cần chứa dữ liệu trong cấu trúc bảng và các mục dữ liệu không có quan hệ với nhau.

Trong RDBMS, cấu trúc bảng là bắt buộc và giữa chúng có mối quan hệ với nhau. Các mối quan hệ này làm cho người dùng có thể áp dụng và quản lý các qui tắc kinh doanh vào các đoạn mã.

RDBMS có thể lưu trữ và thao tác trên một số lượng lớn dữ liệu.

Số lượng nhỏ dữ liệu được lưu trữ và thao tác.

DBMS kém đảm bảo hơn RDBMS.

DBMS kém đảm bảo hơn RDBMS.

Nó là 1 hệ thống đơn người dùng.

Nó là 1 hệ thống đa người dùng

Nó hổ trợ kiến trúc client/server.

Hầu hết các DBMS không hổ trợ kiến trúc client/server.

45

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Quan hệ

46

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Quan hệ

47

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Quan hệ

48

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Quan hệ

49

2

ị ơ ở ữ ệ ệ ả H  Qu n Tr  C  S  D  Li u

Các loại hệ quản trị CSDL

Phần mềm miễn phí hoặc nguồn mở •Cloudscape •Firebird •HSQLDB •Ingres (cơ sở dữ liệu) •MaxDB •MonetDB •MySQL Quan hệ •PostgreSQL •SQLite •tdbengine

50

Phần mềm có bản quyền •4th Dimension •ANTs Data Server •Dataphor •Daffodil database •DB2 •FileMaker Pro •Informix •InterBase •Matisse [1] •Microsoft Access •Microsoft SQL Server •Mimer SQL •NonStop SQL •Oracle •Sand Analytic Server (trước đây là Nucleus) •SmallSQL [2] •Sybase ASA (trước đây là Watcom SQL) •Sybase •Sybase IQ •Teradata •ThinkSQL [3] •VistaDB [4]

3

Giới thiệu SQL Server

• Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relation database management system – RDBMS) chạy trên hệ thống mạng Windows NT 4 hay Windows.

– Network servers: chuyên cung cấp các tài nguyên cho máy trạm – Client/Server Application: phân chia nhiệm vụ giữa hệ thống

máy trạm và máy chủ

• Có thể dùng trong các mô hình :

– Hỗ trợ các tiến trình giao tác với số lượng lớn. – Các hỗ trợ để ra quyết định.

• Một hệ quản trị gồm hai thành phần :

51

• Phương pháp truy xuất máy trạm : – Ngôn ngữ Transact-SQL (T-SQL) – OLE DB/ODBC – ActiveX Data Objects (ADO)

2

Giới thiệu SQL Server

server thông qua mạngserver đọc và xử lý yêu cầu

• Server kiểm tra tính bảo mật và dò tìm các chỉ mục, dữ liệu được khôi phục và khai thác, mã phía server được thực thikết quả cuối cùng được gửi về lại cho client

52

Cơ chế hoạt động: theo mô hình Client/server • Client hay người dùng gửi yêu cầu (request) đến database

2

Giới thiệu SQL Server

11

Client Application Client Application

QueryQuery

Result Set Result Set

SQL Server SQL Server Server Net­Libraries Server Net­Libraries

55

Open Data Services Open Data Services

Database API Database API  (OLE DB, ODBC,   (OLE DB, ODBC,  DB­Library) DB­Library)

33

QueryQuery

Result Set Result Set

22

Client Net­Library Client Net­Library

Relational  Relational  Engine Engine

Server

Client

44

Storage Engine Storage Engine

Processor Processor

53

Memory Memory

Local Database

2

Giới thiệu SQL Server

Client/Server Architecture

Client

SQL Server

OLTPOLTP

Results Results Results Results

OLAPOLAP

Query Query Query Query

Client Application

Relational Database Management System

54

2

Giới thiệu SQL Server

Kiến trúc 2-tầng 1-2

2-Tier Model

Trình bày dữ liệu

Dịch vụ dữ liệu

Sử dụng kiến trúc 2-tầng:

• Dữ liệu chia sẻ giữa máy chủ trung tâm và máy client

• Máy khách gửi yêu cầu đến máy chủ, máy chủ xử lý yêu cầu và

trả kết quả cho máy khách

• Kiến trúc này còn được gọi là kiến trúc client-server

55

2

Giới thiệu SQL Server

ế ầ Ki n trúc 3­t ng 2­2

Thành phần

Logic ứng dụng

Kiến trúc đa tầng

Dịch vụ dữ liệu

ế

Trình bày dữ liệu Ki n trúc 3­t ng

• Được gọi là kiến trúc ứng dụng • Kiến trúc ứng dụng chia ứng dụng thành 3 nhóm dịch vụ

– Tầng dịch vụ người dùng được gọi là tầng trình bày. Trình bày dữ

liệu cho người dùng.

– Tầng dịch vụ tác nghiệp được gọi là tầng logic ứng dụng. Đó là tầng trung gian giữa giao diện và cơ sở dữ liệu. Chức năng: xử lý kiểm tra dữ liệu hợp lệ, logic truy cập dữ liệu.

– Tầng dịch vụ tương tác trực tiếp với dữ liệu nguồn như: thêm mới,

56

sửa, xóa, rút trích

2

Giới thiệu SQL Server

N-tier Architecture

N-tier Architecture

57

2

Giới thiệu SQL Server

– SQL server có chức năng chính là gửi các yêu cầu giữa

một máy tính Client với một máy SQL Server.

– Hỗ trợ việc phát triển các ứng dụng CSDL nâng cao

như : SQL, T-SQL, …

– Hỗ trợ các truy vấn và giao tác phân tán, replication – Online Transaction Processing (OLTP) – Data Warehousing – Analysis Services (OLAP) – Meta Data Services – Các ứng dụng về thương mại điện tử (E-commerrce

applications)

58

58

• Các tính năng quan trọng

P18

3

SQL Server Services & Tools

SQL Server Services

Data Management Transaction and Query

Processing Data Integrity

MSSQLServer Service

Jobs Alerts Operators

Distributed Transaction Management

SQLServerAgent Service

Microsoft Distributed Transaction Coordinator

Server

Full-Text Catalogs Full-Text Indexes

59

Microsoft Search

3

SQL Server Services & Tools

Transact-SQL (T-SQL)

Implementation of Entry-Level ANSI ISO Standard

– Data Definition Language Statements (DDL)

• • Composing of 3 categories

– Data Control Language Statements (DCL)

60

– Data Manipulation Language Statements (DML)

3

SQL Server Services & Tools

CLR Integration

61

• Lets you write your database queries using .NET • Any .NET language (C#, VB, C++) • Create and debug using Visual Studio IDE

3

SQL Server Services & Tools

SQL Server Editions

• Enterprise (Developer) Edition

• Standard Edition

• Workgroup Edition

• SQL Server Express Edition

62

• SQL Server Everywhere Edition

4

Giới thiệu SQL Server 2008

SQL Server 6.5

SQL Server 7.0

SQL Server 2000

SQL Server 2005

SQL Server 2008

• Enterprise-class

• Re-architecture

• Data

• Reliability and

• Secure trusted platform for data

scalability

warehousing

• Productive

of relational server

scalability advancements

• Programmability advancements

• First to include

• Internet support

• Deep XML

support

• Data

• Differentiation from Sybase SQL Server

OLAP in database • Auto tuning • Ease-of-use

policy-based management • Optimized and predictable system performance

• End-to-end business intelligence • Manageability • Support for

warehousing • SQL Server CE • 64 bit support

• Dynamic

development

multiple types of data

• Beyond

relational data

Evolution of SQL Server

• Pervasive

Business Insight

Realibility & Security Realibility & Security Integrated Business Intelligence Integrated Business Intelligence

Cross-release Cross-release objective objective

Performance and Scalability Performance and Scalability Automatic Tuning Automatic Tuning

63

4

Giới thiệu SQL Server 2008

• Microsoft SQL Server 2008 là một hệ quản trị cơ sở dữ liệu quan hệ (Relatioan database management system – RDBMS).

– Cung cấp một nền tảng an toàn, tin cậy, giảm được sự phức tạp

trong việc quản lý cơ sở hạ tầng dữ liệu.

– Kết hợp với .NET Framework giảm được sự phức tạp trong việc

phát triển các ứng dụng mới

– Khai thác triệt để và quản lý bất kỳ kiểu dữ liệu nào từ các kiểu

dữ liệu truyền thống đến dữ liệu không gian địa lý mới.

– Cho phép quản lý, lưu trữ, truy xuất, hiệu chỉnh, xóa dữ liệu

64

• Chức năng chính của SQL Server 2008:

4

Giới thiệu SQL Server 2008

65

66

Your Data Any Place, Any Time

4

Giới thiệu SQL Server 2008

Dữ liệu Mọi lúc, Mọi nơi • Được tín nhiệm

– Bảo vệ thông tin quý giá – Đảm bảo nghiệp vụ liên tục – Tiên đoán được phản ứng Hiệu suất cao – Quản lý theo chính sách – Đơn giản hoá việc phát triển ứng dụng – Lưu trữ mọi loại thông tin Thông minh – Tích hợp mọi dữ liệu – Chuyển giao thông tin liên quan – Mang lại khả năng thấu hiểu để hành động

67

4

Cài đặt SQL Server 2008

Bước 1: Chạy file setup.exe để cài đặt, chọn Installation -> New SQL Server stand-alone ...

68

4

Cài đặt SQL Server 2008

Bước 2: Chọn OkClick Next

69

4

Cài đặt SQL Server 2008

Bước 3: Chọn kiểu cài đặt

70

4

Cài đặt SQL Server 2008

Bước 4: Nhập product key

71

4

Cài đặt SQL Server 2008

Bước 5: Sau khi đồng ý License Terms, chọn các thành phần cài đặt

72

4

Cài đặt SQL Server 2008

Bước 6: Thiết lập cài đặt chọn Default instance

73

4

Cài đặt SQL Server 2008

Bước 7: Cấu hình server

74

4

Cài đặt SQL Server 2008

Bước 8: Cấu hình dữ liệu như sau chọn Window Authentication và Add current User

75

4

Cài đặt SQL Server 2008

Bước 8: Cấu hình analysis services Add Current User Bước 10: Cấu hình report chọn option như hình nhấn Next, Next … Cho đến khi hoàn tất

76

5

Bộ công cụ SQL Management Studio

– SQL Server Management Studio

– Business Intelligence Development Studio

• Hai studio của SQL Server:

• Cả hai studio đều cung cấp các projects được tổ

77

77

chức thành các Solution

5

Các Studio của SQL Server

SQL Server Management Studio

• Là môi trường tích hợp để truy xuất, cấu hình, quản lý

tất cả các thành phần của SQL Server.

78

78

• Kết hợp các chức năng của Enterprise Manager và Query Analyzer trong các phiên bản trước của SQL Server

5

SQL Server Management Studio

Integrated Management Environment

• • Navigation • Administering Databases • Maintaining SQL Server Database • Writing Transact-SQL with Query Editor • Working with Templates, Solutions, Script Projects,

79

and Source Control

5

SQL Server Management Studio

80

Integrated Management Environment

5

SQL Server Management Studio

Registered Servers

81

Integrated Management Environment

5

SQL Server Management Studio

Summary Pane

82

Integrated Management Environment

5

SQL Server Management Studio

Template Explorer and Solution Explorer

83

Template Explorer & Solution Explorer

5

SQL Server Management Studio

Navigation with Object Explorer

Demo

• Creating a new database

• Creating a table

• Creating a diagram

84

• Creating a login

5

SQL Server Management Studio

(cid:0) Integrated Management Environment

(cid:0) Navigation • Administering Databases • Maintaining SQL Server Database • Writing Transact-SQL with Query Editor • Working with Templates, Solutions, Script Projects, and

Source Control

85 85

5

SQL Server Management Studio

Disaster Recovery

• Choose recovery model

• Manage backup media

86

• Create base functionality script

5

SQL Server Management Studio Configuration Manager

Change the Service Log On Accounts for each SQL Service

Manage the State and Start Mode for SQL Services

Configure SQL Services, Network Protocols and Network Configuration

87

5

SQL Server Management Studio

Services disabled and features not installed by default

New Installation

SQL Server 2008

State of services and features carried over from upgraded installation

SQL Server 2005

SQL Server 2008

88

Surface Area Configuration

5

SQL Server Management Studio

Services disabled and features not installed by default

SQL Server 2008

Surface Area Configuration for Services and Connections

Surface Area Configuration for Features

State of services and features carried over from upgraded installation

89

SQL Server 2008

Surface Area Configuration

5

SQL Server Management Studio

(cid:0)

Integrated Management Environment

(cid:0) Navigation (cid:0) Administering Databases • Maintaining SQL Server Database • Writing Transact-SQL with Query Editor • Working with Templates, Solutions, Script

Projects, and Source Control

90 90

5

SQL Server Management Studio

Backup and Restore

Demo

• Creating a Backup Device

• Backing up a Database

• Backing up a Transaction Log

• Restoring a Database

• Export a Database

91

• Import a Database

5

SQL Server Management Studio

Replication Enhancement

• Redesigned replication wizards

• Initializing replication subscribers

• Pre-computed partitions

92

• Transactional parallelism

5

SQL Server Management Studio

View status of all publications and subscriptions

Monitor all the publishers in your organization

93

Replication Monitor

5

SQL Server Management Studio

Internet Replication

XML over HTTP/HTTPS

Binary over TCP/IP

Subscriber

Firewall

Publisher

IIS

https://myserver.mydomain.com

94

5

SQL Server Management Studio

95

Database Tuning Advisor

5

SQL Server Management Studio

Query Editor

Query Editor

Demo

96

Result

5

SQL Server Management Studio

(cid:0)

Integrated Management Environment

(cid:0) Navigation (cid:0) Administering Databases (cid:0) Maintaining SQL Server Database (cid:0) Writing Transact-SQL with Query Editor • Working with Templates, Solutions, Script

Projects, and Source Control

97 97

5

SQL Server Management Studio

Templates

• Containing the T-SQL statements

for common tasks.

• Containing parameters for the

user-provided values • As a starting point for

programming (re-)Organized in a tree structure

98

• • Can be created by users

5

SQL Server Management Studio

Solutions

• Script project(s)

• Enabling the organization of files & connections within

project

• can be managed with a source control product ( as

99

Microsoft Visual SourceSafe)

5

SQL Server Management Studio

SQL Server Management Studio in 10

It's easier to find errors

It (sort of) plays well with previous versions

100

1. Combines the best features of many tools 2. Work with projects and solutions 3. The tool is a data analyst's best friend 4. You can display line numbers 5. 6. Get started faster with an expanded Template Explorer 7. 8. Name that registered server 9. Manage your SQL Server Integration Services pages 10. Keep tabs on your reports

5

SQL Server Management Studio

Khởi động SQL Server Management Studio

101

1. Mở SQL Server Management Studio ta làm như sau: Vào start -> chọn program -> chọn Microsoft SQL Server 2008 -> chọn SQL Server Management Studio

5

SQL Server Management Studio

• Server Type: Như ví dụ của cuốn sách này, cho phép server type là Database Engine. Các tùy chọn khác là kiểu dữ liệu khác nhau của servers nó sẽ hiển thị kết nối.

• Server Name: Hộp combo thứ 2 chứa 1 danh sách của SQL Server cài đặt mà chọn. Trong hộp thoại hình 12, bạn sẽ thầy tên của máy tính được cài đặt trên local. Nếu bạn mở hộp Server name bạn có thể tìm kiếm nhiều server local hoặc network connection bằng cách chọn .

• Authentication: Combobox cuối cùng xác định các loại hình kết nối bạn muốn sử dụng.Trong giáo trình này chúng ta kết nối đến SQL Server sử dụng Windowns Authentication. Nếu bạn cài đặt SQL Server với chế độ hỗn hợp(mix mode), thì bạn có thể thay đổi chọn lựa SQL Server authentication, thì nó sẽ mở hai hộp thoại và cho phép nhập username và password.

102

Khởi động SQL Server Management Studio

5

SQL Server Management Studio

103

Khởi động SQL Server Management Studio

5

SQL Server Management Studio

SQL Server Management Studio in 10

It's easier to find errors

It (sort of) plays well with previous versions

104

1. Combines the best features of many tools 2. Work with projects and solutions 3. The tool is a data analyst's best friend 4. You can display line numbers 5. 6. Get started faster with an expanded Template Explorer 7. 8. Name that registered server 9. Manage your SQL Server Integration Services pages 10. Keep tabs on your reports

5

Các Studio của SQL Server

Business Intelligence Development Studio

• Là môi trường tích hợp để phát triển các cấu trúc thông minh doanh nghiệp như cubes, data source, reports,…

105

• Ví dụ: các dự án Analysis Services, Integration Services và Reporting Services có thể cùng tích hợp trong 1 solution

5

Business Intelligence (BI)

Là tên một chuyên ngành cho phép quản lý dữ liệu cho mục đích phân tích, khai thác, báo cáo và hình ảnh hóa dữ liệu

Integration Services (IS), đôi khi được gọi là SSIS

1. 2. Reporting Services (RS) 3. Analysis Services (AS)

106

• SQL cung cấp 3 dịch vụ dành cho BI

5

Business Intelligence Studio

Integration Services (IS)

 Dùng để chuyển đổi dữ liệu từ nhiều nguồn và là 1

107

công cụ ETL (Extract Transform Load)

5

Business Intelligence Studio

Annalysis Services

Bao gồm 2 thành phần chính:

• Online Analytical Processing (OLAP); tạo CSDL đa

chiều (Multidimensional databases), dữ liệu được lưu trữ trong Cube

• Data Mining: cung cấp các phương pháp để phân tích

108

các tập dữ liệu theo những giải thuật khác nhau.

6

Metadata – Siêu dữ liệu

109

• System database • Metadata views

6

Metadata – Siêu dữ liệu

System database

• Master: chứa tất cả các thông tin cấp hệ thống

– Nơi lưu trữ data file của các database – Login account – Cấu hình sql server.

• Model: Là một bản mẫu cho các database khác.

– Khi một database được tạo ra thì sql server sẽ copy tất cả các system objects(objects (tables, store procedure...) từ model database sang database vừa tạo.

• Msdb: được sử dụng bởi SQl agent để hoạch định các

110

cảnh báo và công việc

6

Metadata – Siêu dữ liệu

System database • Tempdb

– Chứa tất cả các tables, store procedure tạm được tạo ra trong 1 user session hoặc do bản thân sql engine. – Tự động xóa khi SQL server khởi động lại hoặc user

ngắt connect

111

• Resource: Cơ sở dữ liệu này là cơ sở dữ liệu chỉ đọc. Nó gồm các đối tượng hệ thống được gộp vào trong SQL Server 2005.

6

Metadata – Siêu dữ liệu

Metadata view • Catalog views

• Dynamic management views (DMVs) and function

• System functions and global variables

• Compatibility views

112

• Information schema views

6

Câu hỏi

1. Định nghĩa các thuật ngữ: cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu, hệ cơ sở dữ liệu, từ điển cơ sở dữ liệu, mô hình cơ sở dữ liệu.

113

2. Nêu các tính chất của một cơ sở dữ liệu 3. Nêu các chức năng của một hệ quản trị cơ sở dữ liệu 4. Giải thích các đặc trưng của giải pháp cơ sở dữ liệu 5. Định nghĩa mô hình cơ sở dữ liệu và phân loại 6. Liệt kê các người có liên quan đến hệ cơ sở dữ liệu.

114