Import/ Export CSDL Bài tập chương 2 Biên soạn: Nguyễn Thị Mỹ Dung 3 1.. Cơ sở dữ liệu trong SQL Server lưu trữ theo 2 phần: phần dữ liệu gồm một tập tin bắt buộc *.mdf [và các tập tin p
Trang 1GVPT: NGUYỄN THỊ MỸ DUNG
SỐ TC: 2
SỐ TIẾT: LT: 20; TH: 20
1
Biên soạn: Nguyễn Thị Mỹ Dung
Chương 1: Tổng quan về SQL Server (LT: 2)
Chương 2: Tạo và quản trị CSDL (LT: 6; TH: 6) Chương 3: Transact-SQL và truy vấn dữ liệu
(LT: 6: TH: 8)
Chương 4: Lập trình với Transact-SQL (LT: 4:
TH: 4)
Chương 5: Bảo Mật và Phân Quyền (LT: 2;
TH: 2)
Chương 6: Kết nối CSDL (Tự học)
Trang 2I Cấu trúc các file của database
II Một số vấn đề thiết kế CSDL III Thiết kế CSDL
IV Thiết kế bảng dữ liệu
V Import/ Export CSDL
Bài tập chương 2
Biên soạn: Nguyễn Thị Mỹ Dung 3
1 Cấu trúc CSDL
SQL Server quản lý trực tiếp các CSDL, danh sách mỗi Server sẽ gồm danh sách các tên CSDL, tên các CSDL là duynhất, không trùng nhau
Cơ sở dữ liệu trong SQL Server lưu trữ theo 2 phần: phần dữ liệu (gồm một tập tin bắt buộc *.mdf [và các tập tin phụ *.ndf ]) và phần nhật ký (*.ldf)
Như vậy một cơ sở dữ liệu có ít nhất 2 tập tin
Cấu trúc logic trong CSDL gồm các table, view
và các object khác
Biên soạn: Nguyễn Thị Mỹ Dung 4
Trang 3Cấu trúc một CSDL như sau:
Biên soạn: Nguyễn Thị Mỹ Dung 5
2 Sơ đồ quản trị CSDL của SQL Server
SQL Server chia thành 2 loại:
- CSDLhệ thống (do hệ thống tạo ra)
- CSDLlogin, cấu hình hệ thống, Lưu trữ các thông tin người dùng (do người dùng tạo ra)
thông tin quản trị CSDL,
Lưu trữ các tab le tạm thời, các thủ tục, phục vụ cho
các User
Trang 43 Cấu trúc File Database
Tập tin lưu trữ một CSDL trong SQL Server có 2 loại:
Primary Primary data data file file: Là file chính lưu trữ dữ liệu (*.mdf = Master Data File), mỗi CSDL có một file primary, lưu trữ điểm bắt đầu của một CSDL và cácđiểm kết nối đến các file lưu trữ tiếp theo
Log Log file file: Là loại tập tin lưu trữ thông tin nhật ký của CSDL
Biên soạn: Nguyễn Thị Mỹ Dung 7
1 Phân loại dữ liệu
Có ba loại: dữ liệu cơ sở (chỉ thêm vào nhưng không thay đổi), dữ liệu gốc (phát sinh rất nhiều),
vàdữ liệu tạm thời (có thể xóa khi không cần)
2 Thiết kế các bảng trong CSDL
Xác định tên CSDL, tên bảng, tên thuộc tính, kiểu dữ liệu, khóa chính, khóa ngoại, RBTV
3 Nơi lưu trữ dữ liệu
4 Cách thức trao đổi và truyền dữ liệu
Biên soạn: Nguyễn Thị Mỹ Dung 8
Trang 5Biên soạn: Nguyễn Thị Mỹ Dung 9
1/ Tạo CSDL
Để tạo một cơ sở dữ liệu người dùng, các thông tin sauđược yêu cầu:
Têncủa cơ sở dữ liệu
Người sở hữu hoặc người tạo cơ sở dữ liệu
Kíchthước của cơ sở dữ liệu
Các tập tin và nhóm các tập tin được sử dụng
để lưu trữ cơ sở dữ liệu
CREATE DATABASE database_name
[ ON [ PRIMARY ] [ <filespec> [ , n ] [ , <filegroup> [ , n ] ]
[ LOG ON { <filespec> [ , n ] } ] ]
[ COLLATE collation_name ] ]
[;]
Cú pháp để tạo một cơ sở dữ liệu người dùng là:
Trang 6Biên soạn: Nguyễn Thị Mỹ Dung 11
Ví dụ để tạo một CSDL:
( NAME = N’Customer_DB’, FILENAME = N’
C:\Program Files\Microsoft SQL Server\MSSQL.1\
MSSQL\Data\Customer_DB.mdf’) LOG ON
( NAME = N’Customer_DB_log’, FILENAME = N’
C:\Program Files\Microsoft SQL Server\MSSQL.1
\MSSQL\Data\Customer_DB_log.ldf’) COLLATE SQL_Latin1_General_CP1_CI_AS
2/ Sao lưu CSDL
Khái niệm
Sao lưu là công việc sao chép thông tin của database vào một thời điểm nhất định vào nơi lưu trữ khác.
Vấn đề – Thật sự có nhu cầu cần sao lưu dữ liệu?
– Chiến lược sao lưu dữ liệu?
Phân loại
Có 4 loại sao lưu: Sao lưu toàn phần; Sao lưu một phần; Sao lưu bảng lưu vết của giao tác (transaction log); Sao lưu các bảng sao trong dữ liệu phân tán (duplicate data).
Biên soạn: Nguyễn Thị Mỹ Dung 12
Trang 7Cú pháp BACKUP DATABASE <TênCSDL> TO DISK =
‘<path\filename>.bak’
[WITH{DIFFERENTIAL | <tham số>} ]
Trongđó:
- DIFFERENTIAL: Sao lưu một phần, mặc định
là saolưu toàn phần
- Các tham số có thể có (cách nhau dấu “,”):
+ DESCRIPTION: ghi chú sao lưu + NAME: tên bảng lưu
+ PASSWORD: mật khẩu sao lưu + RETAINDAYS: ngày hết hạn của sao lưu tính từ thời điểm sao lưu + EXPIREDATE: hạn cuối của sao lưu
+ STOP_ON_ERROR|CONTINUE_AFTER_ERROR: ngừng khi gặp lỗi
v à ngược lại
+ STATS: phần trăm thể hiện trong quá trình sao lưu
Biên soạn: Nguyễn Thị Mỹ Dung 13
Vídụ VD1: Sao lưu toàn phần BACKUP DATABASE qldiemsv
TO DISK = 'E:\qldiemsv.bak'
WITH NAME = 'qldiemsv', STATS = 10 VD2: Sao lưu một phần
BACKUP DATABASE qldiemsv
TO DISK = 'E:\qldiemsv.bak'
WITH DIFFERENTIAL, NAME = 'qldiem', STATS = 10