HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA CƠNG NGHỆ THÔNG TIN
Microsoft SQL Server 2000
Bài 4: Quản trị Cơ Sở Dữ Liệu
Hà Thị Kim Dung
Hà Nội – 2009
Nội dung
Các cơ sở dữ liệu hệ thống và cơ sở dữ liệu mẫu
Thao tác với CSDL
Thao tác với bảng và thiết lập quan hệ
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
2
Các cơ sở dữ liệu hệ thống và cơ sở dữ liệu mẫu
Đặc điểm:
Database = system DB +
user DB
System DB:
Model:
Database
nàynày
đóng
Tempdb
::Chứa
tất
cả
những
table vai
••Master
Msdb
:
Database
Chứa
tất
cả
những
trịstored
như một
bảng mẫu
hay
procedure
tạm thời tạo
thơng
tin
cấp
hệ
thống
được
SQL
Server
Agent
(template)
cho
các
database
ra trong q trình
làm việc vị
bởi
(system-level
information):
khác.
Nghĩa
là
khi
một
user
sử
dụng
để
hoạch
định
bảnfiles,
thân
SQL
Server
tríuser
củahay
cácdo
data
các
login
database
được
tạo
ra
thì
SQL
các
báo
động
và
các
engine.
table hay
Server
sẽ copy
tồnstored
bộ các
account
,Các
system
cơng
cần
làm
procedure
nàysettings).
sẽ biến
mất khi
systemviệc
objects
(tables,
stored
configuration
procedures...)
từServer
Model
khởi
động lại SQL
(schedule
alerts
andhay khi
database
sang database mới
tajobs).
disconnect
System DB
Template
Application
DB
UserDB
vừa tạo.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
3
Các cơ sở dữ liệu hệ thống và cơ sở dữ liệu mẫu (tiếp)
Template DB:
• Các DB ứng dụng cho người dùng được tích hợp sẵn vào MSQL để
làm ví dụ mẫu.
• Northwind: CSDL cơng ty
• Pubs: Xuất bản
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
4
Các cơ sở dữ liệu hệ thống và cơ sở dữ liệu mẫu (tiếp)
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
5
Các thao tác với cơ sở dữ liệu
Create/ Delete, Attach/ Detach:
• Đã tìm hiểu trong phần tìm hiểu về Enterprise
• Tạo mới DB Quan Ly Sinh Vien
Thao tác với bảng và thiết lập quan hệ:
• Tạo mới bảng SINHVIEN
• Thiết lập thuộc tính cho Table SINHVIEN
Một số lưu ý khi thiết kế CSDL
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
6
Các thao tác với cơ sở dữ liệu (tiếp)
Table – Bảng:
Cấu trúc bảng:
i j : recordi record j
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
Đặc trưng: tên gọi, kiểu giá trị,
miền giá trị
Mỗi 1 bản ghi có 1 thuộc tính khóa xác
định tính duy nhất của bản ghi đó
7
Các thao tác với cơ sở dữ liệu (tiếp)
Column – Cột – Thuộc tính:
– Tập hợp các giá trị cùng kiểu dữ liệu ( Data Type).
– Có tên cột: Tên thuộc tính.
– Các giá trị có kiểu dữ liệu Data Type, miền dữ liệu DOM.
Record – Bản ghi – Bản thể:
– Mỗi một bản ghi là thông tin của một đối tượng.
– Cùng một bảng, các bản ghi không được giống nhau về giá trị ở tất
cả các thuộc tính.
– Vì thế, để đảm bảo tính xác định duy nhất, mỗi một bản ghi phải có
1 hoặc 1 vài giá trị thuộc tính xác định tính duy nhất này Khóa.
Ví dụ: MaSV là thuộc tính Khóa.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
8
Các thao tác với cơ sở dữ liệu (tiếp)
Kiểu dữ liệu – Data Type:
• Integer – số nguyên:
• Bit: 2 giá trị 0 hoặc 1
• Decimal và Numeric – Số thập phân
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
9
Các thao tác với cơ sở dữ liệu (tiếp)
Kiểu dữ liệu – Data Type:
• Tiền tệ
• Số thực xấp xỉ:
• Datetime, smalldatetime
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
10
Các thao tác với cơ sở dữ liệu (tiếp)
Kiểu dữ liệu – Data Type:
• String – xâu kí tự
• Unicode string – xâu kí tự kiểu Unicode
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
11
Các thao tác với cơ sở dữ liệu (tiếp)
Kiểu dữ liệu – Data Type:
• Binary string – Xâu kiểu nhị phân
• Ngồi ra cịn một số kiểu Data Type khác nữa:
– Book online Index Data Types SQL Server
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
12
Các thao tác với cơ sở dữ liệu (tiếp)
Tạo mới một CSDL:
Enterprise
Database
Create New Database
Table
Create New Table
SetPrimaryKey
Save
SetPrimaryKey:
1 column làm key
Nhiều column làm key:
Shift+Biểu tượng key
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
13
Các thao tác với cơ sở dữ liệu (tiếp)
Lưu ý:
• Ngồi sử dụng Enterprise, có thể
dùng câu lệnh SQL trong Query
Analyzer tuy nhiên khơng nhanh
bằng.
• Để sửa lại các bảng đã thao tác, chỉ
việc chọn lại tên bảng, chọn Design
Table là được.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
14
Các thao tác với cơ sở dữ liệu (tiếp)
Thiết lập mối quan hệ giữa các bảng:
• Điều quan trọng là phải biết rõ quan hệ (Relationship) giữa các table:
– One-to-One Relationships : trong mối quan hệ này thì một hàng bên table A
không thể liên kết với hơn 1 hàng bên table B và ngược lại. Ví dụ: 1 Khoa thì có
1 Trưởng Khoa, 1 Trưởng Khoa chỉ làm trưởng khoa của 1 Khoa duy nhất.
– One-to-Many Relationships : trong mối quan hệ này thì một hàng bên table A
có thể liên kết với nhiều hàng bên table B, 1 hàng bên B chỉ có thể liên kết với 1
hàng bên A. Ví dụ: Một lớp có nhiều sinh viên, mỗi sinh viên chỉ thuộc biên chế
của 1 lớp.
– Many-to-Many Relationships : trong mối quan hệ này thì một hàng bên table
A có thể liên kết với nhiều hàng bên table B và một hàng bên table B cũng có
thể liên kết với nhiều hàng bên table A. Ví dụ: Một lớp có nhiều mơn học, một
mơn học có thể học bởi nhiều lớp.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
15
Các thao tác với cơ sở dữ liệu (tiếp)
Thiết lập mối quan hệ giữa các
bảng:
• Sử dụng Diagram của Enterprise
để tạo mối liện hệ (liên hệ khóa
ngoại) giữa các bảng.
• Khái niệm khóa ngoại FOREIGN
KEY
• Ngồi dùng Enterprise, có thể
viết câu lệnh SQL
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
16
Các thao tác với cơ sở dữ liệu (tiếp)
Drag&Drop
Enforce relationship for INSERTs and
Enforce
Check existing
relationship
datafor
on
UPDATE: Đặt quan hệ cho các thao tác
replication:
creation
data
Bắtđã
buộc
được
phải
tạođặt
ra
chèn
và cập nhật.
quan
rồi hay
hệ khi
chưa?
saoNếu
chép.data
Cascade
Related
Fields:
khơngUpdate
thích hợp
thì quan
hệ
Primary Key thay đổi Foreign Key tự
sẽ không được tạo, cần phải
động cập nhật.
cập nhật dữ liệu lại cho
Cascade
Deletekhi
Related
Fields:Primary
đúng trước
tạo quan
hệ.
Key bị xóa Foreign Key cũng bị xóa.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
17
Các thao tác với cơ sở dữ liệu (tiếp)
Cập nhật bản ghi vào bảng
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
18
Các thao tác với cơ sở dữ liệu (tiếp)
Một số lưu ý:
– Các thao tác với CSDL đã làm với Enterprise như: tạo mới DB, tạo mới Table,
thêm các bản ghi vào cho Table đều có thể được người dụng tự viết trong Query
Analyzer sử dụng câu lệnh SQL.
– Lưu ý về ràng buộc khóa ngoại: Các điều kiện Tồn vẹn tham chiếu Cascade
Update và Cascade Delete.
– Đặt tên:
• SINH_VIEN
• MaSV
• Ho_Ten
– Nắm vững DataType ( dành cho bài tập về nhà)
Có ít nhất một cột thuộc loại ID dùng để xác định một record dễ dàng.
– Tránh dùng cột có chứa NULL và nên ln có giá trị Default cho các cột
– Tránh lập lại một giá trị hay cột nào đó
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
19
Câu hỏi cuối chương
Câu 1: Phân biệt sự khác nhau giữa các kiểu dữ liệu : char(5),
nchar(5) varchar(5), nvarchar(5).
Câu 2: Một trang web muốn xây dựng phần mềm quản lý thư
viện trong đó có 3 Bảng books lưu tên các đầu sách, Authors
lưu tên các tác giả viết sách và Pubs nêu tên các nhà xuất bản
các cuốn sách đó. Giữa sách và nhà xuất bản, sách và tác giả
họ xây dựng các mối quan hệ tương tự như 2 hình bên. Trong
đó có các ràng buộc là: Một cuốn sách chỉ được xuất bản ở 1
nhà xuất bản, một nhà xuất bản có thể xuất bản nhiều đầu
sách. (hình a). Một cuốn sách do 1 tác giả viết, 1 tác giả có
thể viết nhiều cuốn sách (hình 2). Hãy xây dựng CSDL dựa
vào hai hình đã cho.
Bài 4 Quan tri CSDl
Hà Thị Kim Dung
20