Upload
thinh-tran-van
View
19
Download
0
Embed Size (px)
DESCRIPTION
giaitoantrenmaytinh3
Citation preview
1
Giảng viên: Trần Thị Kim Chi
CHƯƠNG 1
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
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)
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
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)
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
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
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
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
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
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.
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
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
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.
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.
16
Tổng quan về CSDL quan hệ - Các khái niệm cơ bản
1
Mô hình mạng
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ó.
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
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ệ
20
Entities
Attributes
Relations
Tables
Fields
Tổng quan về CSDL quan hệ - Các khái niệm cơ bản
1
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
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
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
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
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
28
Mô hình đối tượng
Tổng quan về CSDL quan hệ - Các khái niệm cơ bản
1
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
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
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
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
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
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
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
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
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
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
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).
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
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
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
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
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
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.
46
Quan hệ
Hệ Quản Trị Cơ Sở Dữ Liệu2
47
Quan hệ
Hệ Quản Trị Cơ Sở Dữ Liệu2
48
Quan hệ
Hệ Quản Trị Cơ Sở Dữ Liệu2
49
Quan hệ
Hệ Quản Trị Cơ Sở Dữ Liệu2
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
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
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
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
54
Client/Server Architecture
Relational DatabaseManagement System
SQL ServerClient
ResultsResultsResultsResults
Client Application
OLAPOLAP
OLTPOLTP
QueryQueryQueryQuery
Giới thiệu SQL Server2
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
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
57
N-tier Architecture
N-tier Architecture
Giới thiệu SQL Server2
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
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
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
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
62
SQL Server Editions
• Enterprise (Developer) Edition
• Standard Edition
• Workgroup Edition
• SQL Server Express Edition
• SQL Server Everywhere Edition
SQL Server Services & Tools3
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
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
65
Giới thiệu SQL Server 20084
66
Your Data Any Place, Any Time
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
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
69
Cài đặt SQL Server 20084
Bước 2: Chọn OkClick Next
70
Cài đặt SQL Server 20084
Bước 3: Chọn kiểu cài đặt
71
Cài đặt SQL Server 20084
Bước 4: Nhập product key
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
73
Cài đặt SQL Server 20084
Bước 6: Thiết lập cài đặt chọn Default instance
74
Cài đặt SQL Server 20084
Bước 7: Cấu hình server
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
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
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
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
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
80
Integrated Management Environment
SQL Server Management Studio5
81
Integrated Management Environment
RegisteredServers
SQL Server Management Studio5
82
Integrated Management Environment
SummaryPane
SQL Server Management Studio5
83
Template Explorer & Solution Explorer
TemplateExplorer
and SolutionExplorer
SQL Server Management Studio5
84
Navigation with Object Explorer
Demo
• Creating a new database
• Creating a table
• Creating a diagram
• Creating a login
SQL Server Management Studio5
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
86
Disaster Recovery
• Choose recovery model
• Manage backup media
• Create base functionality script
SQL Server Management Studio5
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
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
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
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
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
92
Replication Enhancement
• Redesigned replication wizards
• Initializing replication subscribers
• Pre-computed partitions
• Transactional parallelism
SQL Server Management Studio5
93
Replication Monitor
Monitor all the publishers in your organization
View status of all publications and subscriptions
SQL Server Management Studio5
94
Internet Replication
Subscriber IIS PublisherFirewall
https://myserver.mydomain.com
XML over HTTP/HTTPS Binary over TCP/IP
SQL Server Management Studio5
95
Database Tuning Advisor
SQL Server Management Studio5
96
Query Editor
QueryEditorQueryEditor
ResultResult
DemoDemo
SQL Server Management Studio5
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
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
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
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
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
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
103
Khởi động SQL Server Management Studio
SQL Server Management Studio5
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
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
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
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
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
109
• System database• Metadata views
Metadata – Siêu dữ liệu6
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
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
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
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
114