Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung

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à duy nhấ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.

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 1

Trang 1

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 2

Trang 2

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 3

Trang 3

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 4

Trang 4

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 5

Trang 5

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 6

Trang 6

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 7

Trang 7

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 8

Trang 8

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 9

Trang 9

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 15 trang xuanhieu 6900
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung

Bài giảng Hệ quản trị cơ sở dữ liệu SQL Server - Chương 2: Tạo và quản trị cơ sở dữ liệu - Nguyễn Thị Mỹ Dung
CHƯƠNG 2: QUẢN TRỊ CSDL
 GVPT: NGUYỄN THỊ MỸ DUNG
 SỐ TC: 2
 SỐ TIẾT: LT: 20; TH: 20
 Biên soạn: Nguyễn Thị Mỹ Dung 1
 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)
 Biên soạn: Nguyễn Thị Mỹ Dung 2
 1
CHƯƠNG 2: QUẢN TRỊ CSDL
 I. 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à duy nhấ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
 2
CHƯƠNG 2: QUẢN TRỊ CSDL
 Cấ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:
 - CSDL hệ thống (do hệ thống tạo ra)
 Lưu trữ các thông tin 
 - CSDLLưungười trữ cácdùng table(do tạmngười thời, dùng tạo ra)
 login,các cấu thủ hình tục,... hệ thống, phục vụ cho 
 thông tin quản cáctrị CSDL,... User 
 Biên soạn: Nguyễn Thị Mỹ Dung 6
 3
CHƯƠNG 2: QUẢN TRỊ CSDL
 3. Cấu trúc File Database
 Tập tin lưu trữ một CSDL trong SQL Server có 2
 loại:
 - Primary data 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 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
 4
CHƯƠNG 2: QUẢN TRỊ CSDL
 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ên của cơ sở dữ liệu
  Người sở hữu hoặc người tạo cơ sở dữ liệu
  Kích thướ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
 Biên soạn: Nguyễn Thị Mỹ Dung 9
 Cú pháp để tạo một cơ sở dữ liệu người dùng là:
 CREATE DATABASE database_name 
 [ ON 
 [ PRIMARY ] [ [ ,...n ] 
 [ , [ ,...n ] ] 
 [ LOG ON { [ ,...n ] } ] 
 ] 
 [ COLLATE collation_name ] 
 ]
 [;]
 Biên soạn: Nguyễn Thị Mỹ Dung 10
 5
CHƯƠNG 2: QUẢN TRỊ CSDL
 Ví dụ để tạo một CSDL:
 CREATE DATABASE Customer_DB ON PRIMARY
 ( 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
 Biên soạn: Nguyễn Thị Mỹ Dung 11
 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
 6
CHƯƠNG 2: QUẢN TRỊ CSDL
  Cú pháp
 BACKUP DATABASE TO DISK =
 ‘.bak’
 [ WITH {DIFFERENTIAL | } ]
 Trong đó:
 - DIFFERENTIAL: Sao lưu một phần, mặc định
 là sao lư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
 Biên soạn: Nguyễn Thị Mỹ Dung 14
 7
CHƯƠNG 2: QUẢN TRỊ CSDL
 VD3:
 BACKUP DATABASE QUANLYBANHANG
 TO DISK= 'D:\ Hoadon_BK.bak'
 [WITH DESCRIPTION = 'Backup database
 Hoadon vào ổ đĩa D', STATS,
 PASSWORD = 'sa', NAME = 'QLHANGHOA']
 Biên soạn: Nguyễn Thị Mỹ Dung 15
 3/ Khôi phục CSDL
 - Phục hồi hệ thống khi có sự cố hoặc thời điểm
 bất kỳ nào đó, dù không có sự cố xảy ra.
 - Tiết kiệm chi phí và thời gian.
 Cú pháp:
 RESTORE DATABASE FROM
 DISK = ‘path\filename.bak’
 [WITH {}]
 - Các tham số:
 + STOP_ON_ERROR|CONTINUE_AFTER_ERROR
 + FILE
 + PASSWORD
 + RECOVERY | NORECOVERY
 Biên soạn: Nguyễn Thị Mỹ Dung 16
 8
CHƯƠNG 2: QUẢN TRỊ CSDL
 Ví dụ
 VD1:
 RESTORE DATABASE qldiemsv FORM DISK =
 'D:\qldiemsv.BAK‘
 VD2:
 RESTORE DATABASE QLHANGHOA
 FROM DISK= 'D:\HANGHOA.bak'
 WITH FILE = 1, NORECOVERY, PASSWORD =
 'sa', REPLACE
 VD3:
 RESTORE DATABASE QLHANGHOA
 FROM DISK= 'D:\HANGHOA.bak'
 WITH RECOVERY, PASSWORD = 'sa', REPLACE
 Biên soạn: Nguyễn Thị Mỹ Dung 17
 4/ Sửa CSDL
  Sửa tên Database
 ALTER DATABASE MODIFY
 NAME = 
 VD:
 ALTER DATABASE QLDIEMSV MODIFYNAME
 = QLDSV
  Ví dụ thay đổi quyền sở hữu của CSDL:
 USE QLDIEMSV
 EXEC sp_changedbowner ‘sa’
 Biên soạn: Nguyễn Thị Mỹ Dung 18
 9
CHƯƠNG 2: QUẢN TRỊ CSDL
 5/ Xoá CSDL
 DROP DATABASE TênCSDL
 Ví dụ:
 DROP DATABASE QLBANHANG
 6/ Chọn và mở database
 USE TênCSDL
 Ví dụ:
 USE QLDSV
 Biên soạn: Nguyễn Thị Mỹ Dung 19
 Ví dụ: Cho các lược đồ quan hệ sau
  Sinhvien (MaSV, Hoten, Namsinh, QQ, Hocluc)
  Detai (MaDT, TenDT, Chunhiem, Kinhphi)
  SV_DT (MaSV, MaDT, Noi_AD, KQ)
 Bảng dữ liệu mẫu như sau:
 Sinhvien MaSv Hoten Namsinh QQ Hocluc
 SV001 Thái Bình An 1983 Cần Thơ 7.5
 SV002 Lê Văn Khang 1985 Vĩnh Long 7.1
 SV003 Trần Đức Thịnh 1983 Đồng Tháp 8.1
 SV004 Bùi Quốc Vượng 1984 Đồng Tháp 9.2
 SV005 Lâm Nhân Nghĩa 1985 Tiền Giang 6.5
 SV006 Hà Công Sự 1982 Cần Thơ 6.0
 SV007 Hồ Phương Thanh 1985 An giang 8.2
 SV008 Vũ Thị Hảo Ý 1986 Bạc Liêu 5.8
 Biên soạn: Nguyễn Thị Mỹ Dung 20
 10
CHƯƠNG 2: QUẢN TRỊ CSDL
 Detai MaDT TenDT Chunhiem Kinhphi
 DT001 Quản lý Nhân sự Nguyễn Thị Xuân 10
 DT002 Web site Bán hàng qua mạng Hồ Văn Quang 15
 DT003 Bảo mật trong thương mại điện tử Trần Hiếu Hạnh 20
 DT004 Quản lý lịch công tác trên mạng Lê Đức Phúc 8
 DT005 Bộ soạn thảo công thức toán học Trần Hiếu Hạnh 9
 DT006 Web site đào tạo từ xa Lê Đức Phúc 25
 SV_DT MaSV MaDT Noi_AD KQ
 SV001 DT001 Đồng Tháp 9.5
 SV002 DT002 Vĩnh Long 9.0
 SV003 DT001 Trà Vinh 9.0
 SV004 DT002 Đồng Tháp 10.0
 SV007 DT004 Trà Vinh 9.0
 SV008 DT003 Bạc Liêu 10.0
 SV001 DT004 Đồng Tháp 9.5
 SV008 DT002 Trà Vinh 9.0
 SV002 DT005 Cà Mau 8.5
 SV001 DT005 Tiền Giang 8.0
 SV006 DT003 Đồng Tháp 9.5
 Biên soạn: Nguyễn Thị Mỹ Dung 21
 1/ Tạo bảng (Table)
 CREATE TABLE (
 [],
 [],
 []
 )
 Các RBTV:
  NOT NULL
  NULL
  UNIQUE
  PRIMARY KEY
  FOREIGN KEY / REFERENCES
 Biên soạn: Nguyễn Thị Mỹ Dung 22
 11
CHƯƠNG 2: QUẢN TRỊ CSDL
 Ví dụ: Lấy CSDL “sinh viên thực hiện đề tài”
 CREATE TABLE SINHVIEN (
 MASV CHAR(10) PRIMARY KEY,
 HOTENSV CHAR(40),
 NAMSINH INT,
 QUEQUAN CHAR(40),
 HOCLUC FLOAT
 )
 CREATE TABLE DETAI(
 MADT CHAR(10) PRIMARY KEY,
 TENDT CHAR(40),
 CHUNHIEM CHAR(40),
 KINHPHI INT
 )
 Biên soạn: Nguyễn Thị Mỹ Dung 23
 CREATE TABLE SV_DT (
 MASV CHAR(10) NOT NULL,
 MADT CHAR(10) NOT NULL,
 NOIA_D CHAR(40),
 KETQUA FLOAT,
 PRIMARY KEY (MASV, MADT),
 CONSTRAINT SVDT_SV FOREIGN KEY
 (MASV) REFERENCES SINHVIEN(MASV),
 CONSTRAINT SVDT_DT FOREIGN KEY
 (MADT) REFERENCES DE_TAI(MADT)
 )
 Biên soạn: Nguyễn Thị Mỹ Dung 24
 12
CHƯƠNG 2: QUẢN TRỊ CSDL
 2/ Thay đổi thuộc tính bảng
 Thêm cột: ALTER TABLE ADD
 []
 Xóa cột: ALTER TABLE 
 DROP COLUMN 
 Mở rộng cột: ALTER TABLE 
 ALTER COLUMN
 Biên soạn: Nguyễn Thị Mỹ Dung 25
 Thêm RBTV: ALTER TABLE ADD
 CONSTRAINT ,
 CONSTRAINT ,
 Xóa RBTV: 
 ALTER TABLE DROP 
 Ví dụ:
 CREATE TABLE HANGHOA(
 MAHG CHAR(10),
 TENHANG CHAR(50),
 DVT CHAR(5),
 Biên soạn: Nguyễn Thị Mỹ Dung 26
 13
CHƯƠNG 2: QUẢN TRỊ CSDL
  Thêm thuộc tính bảng:
 ALTER TABLE HANGHOA ADD
 DONGIA FLOAT
  Mở rộng kiểu dữ liệu cho thuộc tính bảng:
 ALTER TABLE HANGHOA
 ALTER COLUMN DONGIA BIGINT
  Xóa thuộc tính bảng:
 ALTER TABLE HANGHOA 
 DROP COLUMN DVT
 Biên soạn: Nguyễn Thị Mỹ Dung 27
 3/ Xóa bảng
 DROP TABLE 
 Ví dụ:
 DROP TABLE HANGHOA
 DROP TABLE SINHVIEN
 Biên soạn: Nguyễn Thị Mỹ Dung 28
 14
CHƯƠNG 2: QUẢN TRỊ CSDL
 Sinh viên tự học
 Lưu ý:
 - Import/ Export: thực hiện đối với phiên bản
 SQL Enterprise, không hỗ trợ cho phiên bản
 Express.
 - Import/Export dữ liệu sang Excel và Access.
 - Import/Export dữ liệu thao tác bằng lệnh và
 click chọn.
 Biên soạn: Nguyễn Thị Mỹ Dung 29
 - Cấu trúc file CSDL (các thành phần trong
 CSDL)
 - Thiết kế CSDL
 + Tạo, sửa, xóa CSDL
 + Backup/ Restore CSDL
 - Thiết kế bảng dữ liệu
 + Tạo, thêm, sửa, xóa bảng
 + Tạo, thêm, sửa xóa RBTV
 - Import/ Export dữ liệu (Excel, Access)
 Biên soạn: Nguyễn Thị Mỹ Dung 30
 15

File đính kèm:

  • pdfbai_giang_he_quan_tri_co_so_du_lieu_sql_server_chuong_2_tao.pdf