1. Trang chủ
  2. » Công Nghệ Thông Tin

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

15 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 6,37 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội 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 cung cấp cho người học những kiến thức như: Cấu trúc các file của database; Một số vấn đề thiết kế cơ sở dữ liệu; Thiết kế cơ sở dữ liệu; Thiết kế bảng dữ liệu; Import/ Export cơ sở dữ liệu.

Trang 1

GVPT: 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 2

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

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

Trang 3

Cấu trúc một CSDL như sau:

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 4

3 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

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

Trang 5

Biê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 6

Biên soạn: Nguyễn Thị Mỹ Dung 11

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

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

Trang 7

Cú pháp BACKUP DATABASE <TênCSDL> TO DISK =

‘<path\filename>.bak’ [WITH{DIFFERENTIAL | <tham số>} ]

Trongđó:

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

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

Trang 8

BACKUP DATABASE QUANLYBANHANG

TO DISK= 'D:\ Hoadon_BK.bak' [WIT H DESCRIPTION = 'Backup database Hoadon vàoổ đĩa D', STATS,

PASSWORD = 'sa',NAME = 'QLHANGHOA']

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 <TênCSDL> FROM DISK = ‘path\filename.bak’

[WITH {<tham_số>}]

- Các tham số:

+ STOP_ON_ERROR|CONTINUE_AFTER_ERROR + FILE

+ PASSWORD + RECOVERY | NORECOVERY

Trang 9

 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

4/ Sửa CSDL

Sửa tên Database ALTER DATABASE <Tên_DB_cũ> MODIFY NAME =<Tên_DB_mới>

VD:

ALTER DATABASE QLDIEMSV MODIFYNAME

=QLDSV

Ví dụ thay đổi quyền sở hữu của CSDL:

USE QLDIEMSV

Trang 10

Biên soạn: Nguyễn Thị Mỹ Dung 19

5/ Xoá CSDL

DROPDATABASE TênCSDL

Vídụ:

DROPDATABASE QLBANHANG

6/ Chọn và mở database

USE TênCSDL

Vídụ:

USE QLDSV

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

Trang 11

Biên soạn: Nguyễn Thị Mỹ Dung 21

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

1/ Tạo bảng (Table)

CREATE TABLE <Tên_bảng> (

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>],

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>],

… [<RBTV>]

) Các RBTV:

 NOT NULL

 NULL

 UNIQUE

Trang 12

Biên soạn: Nguyễn Thị Mỹ Dung 23

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

)

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

Trang 13

Biên soạn: Nguyễn Thị Mỹ Dung 25

2/ Thay đổi thuộc tính bảng

Thêm cột: ALTER TABLE <Tên_bảng> ADD

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>]

Xóa cột: ALTER TABLE <Tên_bảng>

DROP COLUM N <Tên_cột>

Mở rộng cột: ALTER TABLE <Tên_bảng>

ALTER COLUM N

<Tên_cột> <Kiểu_dữ_liệu_mới>

Thêm RBTV: ALTER TABLE <Tên_bảng> ADD CONSTRAINT <Tên_RBTV> <RBTV>,

CONSTRAINT <Tên_RBTV> <RBTV>,

Xóa RBTV:

ALTER TABLE <Tên_bảng> DROP<Tên_RBTV>

Ví dụ:

CREATE TABLE HANGHOA(

MAHG CHAR(10) , TENHANG CHAR(50) , DVT CHAR(5) ,

Trang 14

Biên soạn: Nguyễn Thị Mỹ Dung 27

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

Thêm thuộc tính bảng:

ALTER TABLE HANGHOA ADD

3/ Xóa bảng

DROP TABLE <TÊN_TABLE>

Ví dụ:

DROP TABLE HANGHOA DROP TABLE SINHVIEN

Trang 15

Sinh viên tự học

Lưu 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à clickchọn

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

Ngày đăng: 13/07/2021, 11:45

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w