114
1 Giảng viên: Trần Thị Kim Chi CHƯƠNG 1

c01_tongquansqlserver2008

Embed Size (px)

DESCRIPTION

giaitoantrenmaytinh3

Citation preview

Page 1: c01_tongquansqlserver2008

1

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

CHƯƠNG 1

Page 2: c01_tongquansqlserver2008

2

4

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

Giới thiệu SQL Server3

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

Giới thiệu SQL Server 20085

Bộ công cụ Management Studio 6

Metadata – Siêu dữ liệu7

SQL Server Services & Tools

Page 3: c01_tongquansqlserver2008

3

– 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.

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,

đ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.

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

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

1

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

Page 4: c01_tongquansqlserver2008

4

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

1

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

Thông tin: dữ liệu trong ngữ cảnhSTT Mã sinh viên Họ và tên sinh viên Lớp

Tuổi1 10273 Nguyễn Văn Hoà CDTH7 202 00298 Nguyễn Minh Tâm CDTH7 19…151 50542 Hồ Xuân Phương TCTH33 18152 50075 Lê Việt Dũng CNTH34 20

Dữ liệu1 10273 Nguyễn Văn Hoà CDTH7 202 00298 Nguyễn Minh Tâm CDTH7 19…151 50542 Hồ Xuân Phương TCTH33 18152 50075 Lê Việt Dũng CNTH34 20

Page 5: c01_tongquansqlserver2008

5

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

1

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

Page 6: c01_tongquansqlserver2008

6

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

1

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

• 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.

Siêu dữ liệu cho Sinh_viên Data Item ValueName Type Length DescriptionMaSV Char 5 Mã sinh viên Hoten Char 30 Họ và tên sinh viênLop Char 7 Lớp họcTuoi smallint Tuổi

Page 7: c01_tongquansqlserver2008

7

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.

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

1

Cơ sở dữ liệu

Cơ sở dữ liệu

Chương trình ứng dụng 2

Chương trình ứng dụng 1

Người sử dụng khai thácCác hệ thống chương trình ứng dụng khai thác

Page 8: c01_tongquansqlserver2008

8

• Persistent:– 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.

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

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ể

• Shared: – 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)

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

1

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

Page 9: c01_tongquansqlserver2008

9

– 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

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

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

1

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

Page 10: c01_tongquansqlserver2008

10

• 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.

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

– 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

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

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

1

Các hệ thống CSDL

Page 11: c01_tongquansqlserver2008

11

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

1

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ý và truy xuất dữ liệu từ bộ chứa.

Page 12: c01_tongquansqlserver2008

12

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

1

Mô hình phân cấp

• 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

Page 13: c01_tongquansqlserver2008

13

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

1

Mô hình phân cấp

Page 14: c01_tongquansqlserver2008

14

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

1

Mô hình phân cấp

• Ưu điểm:– 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.

Page 15: c01_tongquansqlserver2008

15

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

1

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. • 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.

Page 16: c01_tongquansqlserver2008

16

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

1

Mô hình mạng

Page 17: c01_tongquansqlserver2008

17

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

1

Mô hình mạng

• Ưu điểm:- 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

• Nhược đ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ó.

Page 18: c01_tongquansqlserver2008

18

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

1

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

Page 19: c01_tongquansqlserver2008

19

Relational Data Model

BundooraNorman8507

BalwynMary8452

BundooraGlen3936

KewRobert1108

SuburbNameId

StudentTakes

298507

238507

231108

211108

SNOSID

CSCEVB29

MathsAlgebra18

CSCEDatabase23

CSCESystems21

DeptNameNo

Subject

BundooraNorman8507

BalwynMary8452

BundooraGlen3936

KewRobert1108

SuburbNameId

StudentTakes

298507

238507

231108

211108

SNOSID

CSCEVB29

MathsAlgebra18

CSCEDatabase23

CSCESystems21

DeptNameNo

Subject

Relational DatabaseEntities

Attributes

Relationship

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

1

Mô hình quan hệ

Page 20: c01_tongquansqlserver2008

20

Entities

Attributes

Relations

Tables

Fields

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

1

Page 21: c01_tongquansqlserver2008

21

• Database: a collection of tables.

• Table: information about a single entity

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

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

Id Name Suburb

1108 Robert Kew

3936 Glen Bundoora

8507 Norman

Bundoora

8452 Mary Balwyn

Student

TakesSID SNO

1108 21

1108 23

8507 23

8507 29

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

1

Page 22: c01_tongquansqlserver2008

22

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

1

MONHOC

SINHVIEN

MASV TEN MALOP

TCTH01 Sơn TCTHA

TCTH02 Bảo TCTHB

TCTH03 Trang TCTHAMASV MAMH DIEM

TCTH01 THVP 8

TCTH01 CSDL 6

TCTH01 CTDL 7

TCTH02 THVP 9

TCTH02 CSDL 8

TCTH03 THVP 10

MAMH TENMH TINCHI KHOA

THVP Nhập môn TH 4 CNTT

CSDLCấu trúc dữ liệu

4 CNTT

CTDL Toán rời rạc 3 TOAN

KETQUA

LOP

MALOP TENLOP SISO

TCTHA TCTH32A 80

TCTHB TCTH32B 65

TCTHC TCTH32C 82

Page 23: c01_tongquansqlserver2008

23

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 đơn như Mahd, Masp, Soluong, DongiaBan.

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

1

Page 24: c01_tongquansqlserver2008

24

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

1

Page 25: c01_tongquansqlserver2008

25

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

1

Page 26: c01_tongquansqlserver2008

26

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

1

Page 27: c01_tongquansqlserver2008

27

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.

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

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

1

Page 28: c01_tongquansqlserver2008

28

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

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

1

Page 29: c01_tongquansqlserver2008

29

Bài tậpBài tậpViệ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 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

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

1

Page 30: c01_tongquansqlserver2008

30

Bài tậpBài tậpCâ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

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

1

Page 31: c01_tongquansqlserver2008

31

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

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

1

NSD

NPTUD

NQTCSDL

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

Chương trình ứng dụng A

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

Ngôn ngữthao tácdữ liệu

Cáctừ

điển dữ liệu

CSDL

Page 32: c01_tongquansqlserver2008

32

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

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 - tiện ích của DBMS)

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

1

Page 33: c01_tongquansqlserver2008

33

Qui trình phát triển CSDLQui 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) – Thực hiện database (database implementation) – Bảo trì database (database maintenance)

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

1

Page 34: c01_tongquansqlserver2008

34

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

SVIEN

MASV HOTENSV PHAI MALOP

MONHOC

LOP

MAMH TENMH TINCHI SOTIET

KETQUA

MALOP TENLOP SISO

MASV MAMH DIEM

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

1

Page 35: c01_tongquansqlserver2008

35

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

• Tổ chức vật lý các mẫu tin SVIEN– 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

Tên mục dữ liệu Vị trí bắt đầu Độ dài (bytes)

TEN 1 30

MASV 31 4

PHAI 35 4

MAKH 39 4

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

1

Page 36: c01_tongquansqlserver2008

36

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

Kiến Trúc Của Một Hệ QTCSDL1

Database System

Conceptual schema

Internalschema

User view 1 User view 2 User view 3

Database

External level

Conceptual level

Internal level

Physical database organization

Kiến trúc Database1

Page 37: c01_tongquansqlserver2008

37

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

Kiến Trúc Của Một Hệ QTCSDL1

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.

• 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.

Kiến trúc Database1

Page 38: c01_tongquansqlserver2008

38

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

Kiến Trúc Của Hệ QTCSDL1

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ỹ sư tin học

Kiến Trúc Database1

Page 39: c01_tongquansqlserver2008

39

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

Kiến Trúc Database1

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.

• 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).

Page 40: c01_tongquansqlserver2008

40

Hệ quản trị CSDLHệ 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 đề trên là hệ quản trị cơ sở dữ liệu

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

Page 41: c01_tongquansqlserver2008

41

Hệ quản trị CSDLHệ 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ữ liệu.

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

2

Page 42: c01_tongquansqlserver2008

42

Hệ quản trị CSDLHệ 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.

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

2

Page 43: c01_tongquansqlserver2008

43

Hệ quản trị CSDLHệ 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 phép xem và thêm dữ liệu vào bảng SinhVien

GRANT SELECT, INSERT ON SinhVien TO A,B;

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

Page 44: c01_tongquansqlserver2008

44

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

• 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.

Bảng 1Khóa

Dữ liệu...

Bảng 2Khóa

Dữ liệu...

Quan hệ

CSDL

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

Page 45: c01_tongquansqlserver2008

45

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

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ã.

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

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

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

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

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

Page 46: c01_tongquansqlserver2008

46

Quan hệ

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

Page 47: c01_tongquansqlserver2008

47

Quan hệ

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

Page 48: c01_tongquansqlserver2008

48

Quan hệ

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

Page 49: c01_tongquansqlserver2008

49

Quan hệ

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

Page 50: c01_tongquansqlserver2008

50

Các loại hệ quản trị CSDLPhầ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]

Quan hệ

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

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

Page 51: c01_tongquansqlserver2008

51

• 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.

• Có thể dùng trong các mô hình :– 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ủ

• Một hệ quản trị gồm hai thành phần :– 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.

• 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)

Giới thiệu SQL Server3

Page 52: c01_tongquansqlserver2008

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

server thông qua mạngserver đọ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 thikết quả cuối cùng được gửi về lại cho client

Giới thiệu SQL Server2

Page 53: c01_tongquansqlserver2008

53

Client ApplicationClient Application

Client Net-LibraryClient Net-Library

Client

SQL ServerSQL Server

Relational Engine

Relational Engine

Storage EngineStorage Engine

Server

LocalDatabase

Database API (OLE DB, ODBC,

DB-Library)

Database API (OLE DB, ODBC,

DB-Library)

ProcessorProcessor

MemoryMemory

Open Data ServicesOpen Data Services

Server Net-LibrariesServer Net-Libraries

QueryQuery

Result SetResult Set

Result SetResult Set

QueryQuery11

22

33

44

55

Giới thiệu SQL Server2

Page 54: c01_tongquansqlserver2008

54

Client/Server Architecture

Relational DatabaseManagement System

SQL ServerClient

ResultsResultsResultsResults

Client Application

OLAPOLAP

OLTPOLTP

QueryQueryQueryQuery

Giới thiệu SQL Server2

Page 55: c01_tongquansqlserver2008

55

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

Trình bày dữ liệu Dịch vụ dữ liệu

2-Tier Model

• 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

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

Giới thiệu SQL Server2

Page 56: c01_tongquansqlserver2008

56

Trình bày dữ liệu Dịch vụ dữ liệuKiến trúc đa tầng

Logic ứng dụng

Thành phần

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

• Đượ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, sửa, xóa, rút trích

Kiến trúc 3-tầng

Giới thiệu SQL Server2

Page 57: c01_tongquansqlserver2008

57

N-tier Architecture

N-tier Architecture

Giới thiệu SQL Server2

Page 58: c01_tongquansqlserver2008

58

• Các tính năng quan trọng– 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

Giới thiệu SQL Server2

Page 59: c01_tongquansqlserver2008

59

Microsoft DistributedTransaction Coordinator

MSSQLServer Service

SQLServerAgent Service

Microsoft Search

Server

Data ManagementTransaction and Query

ProcessingData Integrity

JobsAlertsOperators

Full-Text CatalogsFull-Text Indexes

Distributed TransactionManagement

P18

SQL Server Services

SQL Server Services & Tools3

Page 60: c01_tongquansqlserver2008

60

Transact-SQL (T-SQL)• Implementation of Entry-Level ANSI ISO Standard• Composing of 3 categories

– Data Definition Language Statements (DDL)

– Data Control Language Statements (DCL)

– Data Manipulation Language Statements (DML)

SQL Server Services & Tools3

Page 61: c01_tongquansqlserver2008

61

CLR Integration

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

SQL Server Services & Tools3

Page 62: c01_tongquansqlserver2008

62

SQL Server Editions

• Enterprise (Developer) Edition

• Standard Edition

• Workgroup Edition

• SQL Server Express Edition

• SQL Server Everywhere Edition

SQL Server Services & Tools3

Page 63: c01_tongquansqlserver2008

63

Evolution of SQL Server

SQL Server 7.0

SQL Server 2005

SQL Server 2000

Realibility & SecurityRealibility & SecurityIntegrated Business IntelligenceIntegrated Business Intelligence

Performance and ScalabilityPerformance and ScalabilityAutomatic TuningAutomatic Tuning

• Reliability and scalability advancements

• Deep XML support

• Data warehousing

• SQL Server CE• 64 bit support

• Re-architecture of relational server

• First to include OLAP in database

• Auto tuning• Ease-of-use

Cross-release Cross-release objectiveobjective

SQL Server 6.5

• Data warehousing

• Internet support

• Differentiation from Sybase SQL Server

• Enterprise-class scalability

• Programmability advancements

• End-to-end business intelligence

• Manageability• Support for

multiple types of data

SQL Server 2008

• Secure trusted platform for data

• Productive policy-based management

• Optimized and predictable system performance

• Dynamic development

• Beyond relational data

• Pervasive Business Insight

Giới thiệu SQL Server 20084

Page 64: c01_tongquansqlserver2008

64

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

• Chức năng chính của SQL Server 2008:– 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

Giới thiệu SQL Server 20084

Page 65: c01_tongquansqlserver2008

65

Giới thiệu SQL Server 20084

Page 66: c01_tongquansqlserver2008

66

Your Data Any Place, Any Time

Page 67: c01_tongquansqlserver2008

67

• Đượ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

Dữ liệu Mọi lúc, Mọi nơi

Giới thiệu SQL Server 20084

Page 68: c01_tongquansqlserver2008

68

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

Cài đặt SQL Server 20084

Page 69: c01_tongquansqlserver2008

69

Cài đặt SQL Server 20084

Bước 2: Chọn OkClick Next

Page 70: c01_tongquansqlserver2008

70

Cài đặt SQL Server 20084

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

Page 71: c01_tongquansqlserver2008

71

Cài đặt SQL Server 20084

Bước 4: Nhập product key

Page 72: c01_tongquansqlserver2008

72

Cài đặt SQL Server 20084

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

Page 73: c01_tongquansqlserver2008

73

Cài đặt SQL Server 20084

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

Page 74: c01_tongquansqlserver2008

74

Cài đặt SQL Server 20084

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

Page 75: c01_tongquansqlserver2008

75

Cài đặt SQL Server 20084

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

Page 76: c01_tongquansqlserver2008

76

Cài đặt SQL Server 20084

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

Page 77: c01_tongquansqlserver2008

7777

Bộ công cụ SQL Management Studio 5

• Hai studio của SQL Server:

– SQL Server Management Studio

– Business Intelligence Development Studio

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

chức thành các Solution

Page 78: c01_tongquansqlserver2008

7878

Các Studio của SQL Server5

• 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.

• 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

SQL Server Management Studio

Page 79: c01_tongquansqlserver2008

79

SQL Server Management Studio5

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

Source Control

Page 80: c01_tongquansqlserver2008

80

Integrated Management Environment

SQL Server Management Studio5

Page 81: c01_tongquansqlserver2008

81

Integrated Management Environment

RegisteredServers

SQL Server Management Studio5

Page 82: c01_tongquansqlserver2008

82

Integrated Management Environment

SummaryPane

SQL Server Management Studio5

Page 83: c01_tongquansqlserver2008

83

Template Explorer & Solution Explorer

TemplateExplorer

and SolutionExplorer

SQL Server Management Studio5

Page 84: c01_tongquansqlserver2008

84

Navigation with Object Explorer

Demo

• Creating a new database

• Creating a table

• Creating a diagram

• Creating a login

SQL Server Management Studio5

Page 85: c01_tongquansqlserver2008

85

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

Source Control

85

SQL Server Management Studio5

Page 86: c01_tongquansqlserver2008

86

Disaster Recovery

• Choose recovery model

• Manage backup media

• Create base functionality script

SQL Server Management Studio5

Page 87: c01_tongquansqlserver2008

87

Change the Service Log On Accounts for each SQL Service

Configuration Manager

Configure SQL Services, Network Protocols and Network Configuration

Manage the State and Start Mode for SQL Services

SQL Server Management Studio5

Page 88: c01_tongquansqlserver2008

88

Surface Area Configuration

New Installation SQL Server 2008

SQL Server 2005 SQL Server 2008

Services disabled and features not installed by default

State of services and features carried over from upgraded installation

SQL Server Management Studio5

Page 89: c01_tongquansqlserver2008

89

Surface Area Configuration

SQL Server 2008

SQL Server 2008

Services disabled and features not installed by default

State of services and features carried over from upgraded installation

Surface Area Configuration for Services and Connections

Surface Area Configuration for Features

SQL Server Management Studio5

Page 90: c01_tongquansqlserver2008

90

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

Projects, and Source Control

90

SQL Server Management Studio5

Page 91: c01_tongquansqlserver2008

91

Backup and Restore

Demo

• Creating a Backup Device

• Backing up a Database

• Backing up a Transaction Log

• Restoring a Database

• Export a Database

• Import a Database

SQL Server Management Studio5

Page 92: c01_tongquansqlserver2008

92

Replication Enhancement

• Redesigned replication wizards

• Initializing replication subscribers

• Pre-computed partitions

• Transactional parallelism

SQL Server Management Studio5

Page 93: c01_tongquansqlserver2008

93

Replication Monitor

Monitor all the publishers in your organization

View status of all publications and subscriptions

SQL Server Management Studio5

Page 94: c01_tongquansqlserver2008

94

Internet Replication

Subscriber IIS PublisherFirewall

https://myserver.mydomain.com

XML over HTTP/HTTPS Binary over TCP/IP

SQL Server Management Studio5

Page 95: c01_tongquansqlserver2008

95

Database Tuning Advisor

SQL Server Management Studio5

Page 96: c01_tongquansqlserver2008

96

Query Editor

QueryEditorQueryEditor

ResultResult

DemoDemo

SQL Server Management Studio5

Page 97: c01_tongquansqlserver2008

97

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

Projects, and Source Control

97

SQL Server Management Studio5

Page 98: c01_tongquansqlserver2008

98

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• Can be created by users

SQL Server Management Studio5

Page 99: c01_tongquansqlserver2008

99

Solutions

• Script project(s)

• Enabling the organization of files & connections within

project• can be managed with a source control product ( as

Microsoft Visual SourceSafe)

SQL Server Management Studio5

Page 100: c01_tongquansqlserver2008

100

SQL Server Management Studio in 101. Combines the best features of many tools2. Work with projects and solutions 3. The tool is a data analyst's best friend4. You can display line numbers 5. It's easier to find errors 6. Get started faster with an expanded Template Explorer 7. It (sort of) plays well with previous versions8. Name that registered server 9. Manage your SQL Server Integration Services pages 10. Keep tabs on your reports

SQL Server Management Studio5

Page 101: c01_tongquansqlserver2008

101

Khởi động SQL Server Management Studio

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

SQL Server Management Studio5

Page 102: c01_tongquansqlserver2008

102

Khởi động 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 <Browse for more...>.

• 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.

SQL Server Management Studio5

Page 103: c01_tongquansqlserver2008

103

Khởi động SQL Server Management Studio

SQL Server Management Studio5

Page 104: c01_tongquansqlserver2008

104

SQL Server Management Studio in 101. Combines the best features of many tools2. Work with projects and solutions 3. The tool is a data analyst's best friend4. You can display line numbers 5. It's easier to find errors 6. Get started faster with an expanded Template Explorer 7. It (sort of) plays well with previous versions8. Name that registered server 9. Manage your SQL Server Integration Services pages 10. Keep tabs on your reports

SQL Server Management Studio5

Page 105: c01_tongquansqlserver2008

105

Các Studio của SQL Server5

• 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,…

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

Business Intelligence Development Studio

Page 106: c01_tongquansqlserver2008

106

• 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

• SQL cung cấp 3 dịch vụ dành cho BI1. Integration Services (IS), đôi khi được gọi là SSIS2. Reporting Services (RS)3. Analysis Services (AS)

Business Intelligence (BI)5

Page 107: c01_tongquansqlserver2008

107

Integration Services (IS)

Dùng để chuyển đổi dữ liệu từ nhiều nguồn và là 1 công cụ ETL (Extract Transform Load)

Business Intelligence Studio5

Page 108: c01_tongquansqlserver2008

108

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 các tập dữ liệu theo những giải thuật khác nhau.

Business Intelligence Studio5

Page 109: c01_tongquansqlserver2008

109

• System database• Metadata views

Metadata – Siêu dữ liệu6

Page 110: c01_tongquansqlserver2008

110

• 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 cảnh báo và công việc

Metadata – Siêu dữ liệu6

System database

Page 111: c01_tongquansqlserver2008

111

• 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

• 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.

Metadata – Siêu dữ liệu6

System database

Page 112: c01_tongquansqlserver2008

112

• Catalog views

• Dynamic management views (DMVs) and function

• System functions and global variables

• Compatibility views

• Information schema views

Metadata – Siêu dữ liệu6

Metadata view

Page 113: c01_tongquansqlserver2008

113

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.

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.

Câu hỏi6

Page 114: c01_tongquansqlserver2008

114