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

Giáo Trình Hướng Dẫn Thực Hàng Cơ Sở Dữ Liệu Phần 3

13 695 9
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Nhập môn cơ sở dữ liệu
Tác giả Lương Vĩ Minh, Hồ Thị Hoàng Vy, Tiết Gia Hồng
Trường học Trường Đại Học Khoa Học Tự Nhiên
Chuyên ngành Cơ sở dữ liệu
Thể loại Hướng dẫn thực hành
Năm xuất bản 2011
Thành phố Tp.Hồ Chí Minh
Định dạng
Số trang 13
Dung lượng 915,86 KB

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

Nội dung

Giáo Trình Hướng Dẫn Thực Hàng Cơ Sở Dữ Liệu Phần 3

Trang 1

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN

Khoa Công nghệ thông tin – Bộ môn Hệ thống thông tin - Nhập môn Cơ sở dữ liệu

Script ta ̣o CSDL, cấu trúc

CSDL và nhâ ̣p dƣ̃ liê ̣u

Topic

2

Trang 2

Giảng viên Lương Vĩ Minh Hồ Thi ̣ Hoàng Vy Tiết Gia Hồng

2011 - Trườ ng đa ̣i ho ̣c Khoa ho ̣c tự nhiên

227 Nguyễn Văn Cừ Tp.Hồ Chí Minh – Viê ̣t Nam Phone (08) 38.354.266 • Fa x (08) 38.324.467

Trang 3

Mục Lục

A Mụ c tiê u 2

B Phần hướng dẫn thực hành 3

C Phần bài tâ ̣p về nhà 11

1 Hình thức nộp và Thời gian làm bài 11

2 Quy đi ̣nh đă ̣t tên 11

3 Nô ̣i dung & yêu cầu bài tâ ̣p 11

Trang 4

A Mụ c t iê u

Dùng c ú phá p l ện h thự c hiệ n cá c yê u cầ u sa u

 Tạo CS DL

 Tạo b ả ng

 Tha y đổ i c ấ u trúc b ả ng

 Tạo k hó a c hính, k hó a ngoạ i, rà ng b uộc to à n vẹ n

 Nhậ p liệ u

Trang 5

TÀI LIỆU THỰC HANH CSDL - LƯU HÀNH NỘI BỘ

T H S L Ư Ơ N G VĨ MINH – HỒ THI ̣ HOÀNG VY - T I Ế T G I A H Ồ N G

3

B Phần hươ ́ ng dẫn thư ̣c hành

Dat ab a se

 Kiểm t ra CS DL có tồ n tạ i c hưa

Các h 1 :

IF db_id('Tên_CSDL') IS NOT NULL

Print 'Database Exists'

ELSE

Print 'Database Does Not Exists'

Các h 2 :

IF exists(select from sys.databases where name = 'Tên_CSDL')

Print 'Database Exists'

ELSE

Print 'Database Does Not Exists'

 Tạo d ata ba se

CREATE DATABASE Tên_CSDL

Vd : Tạ o CS DL QL SV

CREATE DAT AB ASE QLS V

Một C SDL được tạ o ra gồm 2 f ile c hính là mdf c hứa dữ liệ u và ldf c hứa log

 Đặt d ata ba se h iện h àn h

Trang 6

USE Tên_CSDL

Vd : C hu yể n C SD L mặc đ ịn h ma ster  Q L S V

USE QL S V

 Xóa d atab a se

DROP DATABASE Tên_CSDL

VD : Xóa C SDL Q LSV

USE ma ste r

DROP DATAB ASE Q LS V

 Thự c th i lệ nh S QL

P hí m nó ng :

Ko xóa được vì QLSV đang được

Focus Dùng lệnh USE chuyển CSDL hiện hành thành master

Trang 7

TÀI LIỆU THỰC HANH CSDL - LƯU HÀNH NỘI BỘ

T H S L Ư Ơ N G VĨ MINH – HỒ THI ̣ HOÀNG VY - T I Ế T G I A H Ồ N G

5

- Ctrl + F5 :k iể m tra c ú p háp lệ nh

- F5 : thực thi đ oạ n lệ nh

Me nu :

 C ú p háp p hâ n tá c h thứ tự thự c hiệ n c ủa cá c lệ n h SQ L

GO

Vd : C ú phá p tạ o C SDL c hạ y trư ớc , t ớ i lệ nh Use C SDL

CREATE DAT AB ASE QL S V

GO

USE Q LS V

Tạo b ảng

 Cú phá p k iểm t ra một bả ng đ ã t ồn tạ i t ro ng CS DL ch ưa

Các h 1 :

IF OBJECT_ID('Tên_Bảng','U') IS NOT NULL

Print 'Table Exists'

ELSE

Print 'Table Does Not Exists'

Các h 2 :

IF exists(select from sys.objects where name = 'Tên_Bảng')

Print 'Table Exists'

ELSE

Print 'Table Does Not Exists'

 Cú phá p t ạo b ản g

Thực thi

Kiểm tra cú pháp

Trang 8

Tạo b ản g k h ôn g có k hó a ch ín h

CREATE TABLE [Tên Bảng]

(

[Thuộc tính 1] [Kiểu dữ liệu 1],

[Thuộc tính 2] [Kiểu dữ liệu 2],

,

[Thuộc tính 2] [Kiểu dữ liệu 3]

)

CREATE TABLE NHAN_VIEN (

MaNV char(10), HoTen varchar(30), NgaySinh datetime, GioiTinh bit,

Phong int

)

Tạo b ản g có k hó a ch í nh

Tạo b ản g có k hó a ch í nh

 Cú phá p x ó a bả ng

CREATE TABLE [Tên Bảng]

(

[Thuộc tính 1] [Kiểu dữ liệu 1], [Thuộc tính 2] [Kiểu dữ liệu 2],

[Thuộc tính n] [Kiểu dữ liệu n],

PRIMARY KEY ([Danh sách các thuộc tính làm khóa chính, cách nhau bằng dấu phẩy)]

)

CREATE TABLE NHAN_VIEN (

MaNV char(10), HoTen varchar(30), NgaySinh datetime, GioiTinh bit,

Phong int,

PRIMARY KEY(MaNV) )

CREATE TABLE [Tên Bảng]

(

[Thuộc tính 1] [Kiểu dữ liệu 1], [Thuộc tính 2] [Kiểu dữ liệu 2],

[Thuộc tính n] [Kiểu dữ liệu n],

CONSTRAINT [Tên Khóa Chính]

PRIMARY KEY ([Danh sách các thuộc tính làm khóa chính, cách nhau bằng dấu phẩy)]

CONSTRAINT [Tên Khóa Ngoại]

FOREIGN KEY ([Danh sách các thuộc tính khóa ngoại])

REFERENCES [Tên bảng tham chiếu]([Danh sách các thuộc tính khóa chính của bảng tham chiếu đến])

)

CREATE TABLE PHONG (

Maphg char(10), Tenphg varchar(30), Diadiem varchar(40), Trphg char(10),

CONSTRAINT PK_NV

PRIMARY KEY(maphg),

CONSTRAINT FK_PHG_NV

FOREIGN KEY(Trphg)

REFERENCES

NHAN_VIEN(MaNV) )

Trang 9

TÀI LIỆU THỰC HANH CSDL - LƯU HÀNH NỘI BỘ

T H S L Ư Ơ N G VĨ MINH – HỒ THI ̣ HOÀNG VY - T I Ế T G I A H Ồ N G

7

Tha y đổi c ấu t rú c bả ng

 Thêm k hó a ch ính , k h óa n go ại, ràn g b uộ c m iền g iá t rị

 Xóa k hó a ch ính, k hó a ng oạ i, rà ng b uộ c m iền g iá t rị

Mộ t s ố lư u ý :

 Tê n k ho á c hính, k hó a ngoạ i c h ỉ ma n g tính gợ i nhớ

 Da nh sá c h c á c thuộ c tính k ho á ngo ạ i c ác h nha u b ằ ng d ấ u p hẩ y

 Da nh sá c h c á c thuộ c tính k ho á c hín h c ác h nha u b ằ ng d ấ u p hẩ y

 Các lệ nh x em t hô ng t in cấ u t ru củ a m ột bả ng

Drop table [Tên bảng] Drop table NHAN_VIEN

Thêm khóa chính :

ALTER TABLE [Tên Bảng]

ADD CONSTRAINT [Tên khóa chính]

PRIMARY KEY ([Danh sách các thuộc tính

của khóa chính])

Lưu ý : Khi tạo khóa chính cho bảng ở bên ngoài lệnh

tạo bảng thì các thuộc tính của khóa chính phải được

k hai báo là NOT NULL trong câu lệnh tạo bảng

Thêm khoá chính cho bảng nhân viên:

ALTER TABLE NHAN_VIEN

ADD CONSTRAINT PK_NV

PRIMARY KEY (MaNV)

Thêm khóa ngoại :

ALTER TABLE [Tên Bảng]

ADD CONSTRAINT [Tên khóa ngoại]

FOREIGN KEY ([Danh sách các thuộc tính

khoá ngoại])

REFERENCES [Tên bảng tham chiếu] (

[Danh sách các thuộc tính khoá chính

của bảng tham chiếu tới])

Thêm khóa ngoại cho bảng PHONG:

ALTER TABLE PHONG

ADD CONSTRAINT FK_PHG_NV

FOREIGN KEY (trphg)

REFERENCES NHAN_VIEN(manv)

Thêm ràng buộc miền giá trị

ALTER TABLE [Tên Bảng]

ADD CONSTRAINT [Tên ràng buộc miền gt]

CHECK ([Biểu thức điều kiện])

Thêm ràng buộc phái thuộc Nam hoặc Nữ

ALTER TABLE NHAN_VIEN

ADD CONSTRAINT C_PHAI

CHECK(PHAI IN ('Nam', N'Nữ'))

Xóa ràng buộc

ALTER TABLE [Tên Bảng]

DROP CONSTRAINT [Tên ràng buộc]

Xóa khóa chính

ALTER TABLE NHAN_VIEN

DROP CONSTRAINT PK_NV

Xóa khóa ngoại

ALTER TABLE PHONG

DROP CONSTRAINT FK_PHG_NV

Xem cấu trúc bảng

sp_help [Tên Bảng] sp_help NHAN_VIEN

Xem thông tin khóa chính của bảng

sp_pkeys [Tên Bảng] sp_pkeys NHAN_VIEN

Xem thông tin khóa ngoại của bảng

Trang 10

 Thêm , x ó a, sửa th uộ c t ín h

Nhập liệ u

 Thêm d ữ liệ u v à o bả ng

Một số lư u ý :

sp_fkeys [Tên Bảng] sp_fkeys NHAN_VIEN

Thêm thuộc tính :

ALTER TABLE [Tên Bảng]

ADD [Tên thuộc tính][Kiểu dữ liệu]

Thêm thuộc tính DiaChi

ALTER TABLE NHAN_VIEN

ADD DiaChi varchar(20)

Xóa thuộc tính :

ALTER TABLE [Tên Bảng]

DROP COLUMN [Tên thuộc tính]

Xoá thuộc tính DiaChi

ALTER TABLE NHAN_VIEN

Drop COLUMN DiaChi

Sửa thuộc tính :

ALTER TABLE [Tên Bảng]

ALTER COLUMN [Tên thuộc tính][Kiểu

dữ liệu mới]

Sửa thuộc tính DiaChi

ALTER TABLE NHAN_VIEN

ALTER COLUMN DiaChi varchar(50)

Ví dụ : NHAN_VIEN (manv, hoten, ngaysinh, phai, luong,phg)

Insert không tường minh

INSERT INTO [Tên Bảng]

VALUES([gt1], [gt2], , [gtn])

INSERT INTO NHAN_VIEN VALUES('NV001','Nguyen Van A', '12/30/1955', 'Nam', 5000, null)

Insert tường minh

INSERT INTO [Tên Bảng] ([tt1],

[tt2], , [ttn])

VALUES([gt1], [gt2], , [gtn]

INSERT INTO NHAN_VIEN(manv, hoten, ngaysinh, phai, luong)

VALUES('NV001','Nguyen Van A', '12/30/1955', 'Nam', 5000)

Insert từ một nguồn dữ liệu có

sẳn : (Chưa quan tâm)

Xem từ khóa INSERT SELECT

Kiểu dữ liệu Unicode

Thêm kí tự N trước chuổi

Unicode

Insert into NHANVIEN values('NV001', 'Nguyễn Văn Trường','12/30/1955','Nam',5000,null)

Kiểu dữ liệu ngày tháng

Định dạng nhập ngày tháng mặc

định : 'mm/dd/yyyy'

Insert into NHANVIEN values ('NV001', 'Nguyễn Văn Trường', ' 12/30/1955 ' ,'Nam',5000,null)

Insert một bộ có 1 giá trị là

NULL

Dùng từ khóa null

Insert into NHANVIEN values('NV001', 'Nguyễn Văn Trường','12/30/1955','Nam',5000,null)

Thuộc tính NOT NULL

Nếu thuộc tính được khai báo

trong cú pháp tạo bảng là NOT

NULL thì bắt buộc phải có giá

trị khi nhập 1 bộ vào bảng

Trang 11

TÀI LIỆU THỰC HANH CSDL - LƯU HÀNH NỘI BỘ

T H S L Ư Ơ N G VĨ MINH – HỒ THI ̣ HOÀNG VY - T I Ế T G I A H Ồ N G

9

Nhậ p d ữ liệu k hi đ ã có rà ng bu ộc k hó a ng oạ i :

Cách 1:

1 Bước 1 : Nhập phòng ban

2 Bước 2 : Nhập đề án

Cách 2:

1 Bước 1 : Nhập DEAN, nhập PHONG = null

2 Bước 2 : Nhập phòng ban

3 Bước 3 : Cập nhật DEAN

Cách 1:

Bước 1 : Nhập NHANVIEN, đặt PHG là null Bước 2 : Nhập PHONGBAN

Bước 3 : Cập nhật thuộc tính PHG của NHANVIEN

Cách 2 :

Bước 1 : Nhập PHONGBAN, đặt TRPHG là null Bước 2 : Nhập NHANVIEN

Bước 3 : Cập nhật TRPHG của phòng ban

Trang 12

 Xóa dữ liệ u

Lưu ý khi xóa bảng có liên quan đến khóa ngoại :

 Nế u k hô ng có tha m c hiế u vò n g t hì tiế n hà n h xóa b ả ng c hứ a k hó a ngo ạ i trư ớc sa u đó rồ i xó a b ả ng c ò n lạ i, hoặ c xóa k hó a ngo ạ i rồ i

sa u đó tiế n hà nh xó a c ác b ả ng

 Nế u c ó k hóa vò ng th ì xó a mộ t k hóa đ ể mấ t k hó a vò ng rồ i tiế n hà nh

là m n hư trư ờng hợp 1

 Cập nh ật dữ liệu

 Xem, x óa dữ liệ u củ a m ột bả ng

Cách 1 :

- Những nhân viên mà có MA_NQL là null thì nhập trước

- Sau đó nhập những Nhân viên mà đã nhập thông tin

về NQL của nhân viên đó

Cách 2 :

Bước 1 Nhập NHANVIEN, đặt thuộc tính MA_NQL

là null Bước 2 Cập nhật MA_NQL của NHANVIEN

Drop table [Tên bảng] Drop table NHANVIEN

Cập nhật nội dung của một bảng

UPDATE [Tên bảng]

SET [Thuộc_tính] = [Giá_trị_mới]

WHERE [Biểu thức điều kiện]

Cập nhật GioiTinh bằng NULL

UPDATE [Tên bảng]

SET GioiTinh = null

Xem nội dung của một bảng

SELECT * FROM [Tên bảng]

Xem dữ liệu của bảng NHANVIEN

SELECT * FROM NHANVIEN

Xóa nội dung của một bảng

DELETE FROM [Tên bảng]

WHERE [Biểu thức điều kiện]

Xóa nhân viên NV001 của bảng NHANVIEN

DELETE FROM NHAN_VIEN

WHERE manv = ‘NV001’

Xóa tất cả dữ liệu bảng NHANVIEN

DELETE FROM NHANVIEN

Trang 13

TÀI LIỆU THỰC HANH CSDL - LƯU HÀNH NỘI BỘ

T H S L Ư Ơ N G VĨ MINH – HỒ THI ̣ HOÀNG VY - T I Ế T G I A H Ồ N G

11

C Phần ba ̀i tâ ̣p về nhà

1 Hình thức nộp và Thời gian làm bài

Hì nh thức làm bài : Làm theo cá nhân

Hình thức nộp : Nô ̣p trực triếp

Thời gian nộp (Deadlin e):

 Bà i tậ p v ề nhà : 23:55 ngày 13/3/2011

 Bà i tậ p t ạ i lớ p: 23:55 ngày 7/3/2011

2 Quy đi ̣nh đă ̣t tên

- Đặt tên file nộp theo :

 Bài tập VN: VN02 _ CSDL _ Struct _MSSV.sql

 Bài tập tại lớp: TL02 _ CSDL _ Struct _MSSV.sql

- Ví dụ: VN02 _ CSDL _ Struct _9912043.sql

3 Nô ̣i dung & yêu cầu bài tâ ̣p

- Tại lớp: Dùng lệnh SQL tạo CSDL quản lí thiết bị

 Xóa thuộc tính ChucDanh

 Thêm thuộc tính HocHam (nvarchar(40)) và HocVi (nvarchar(40)) vào bảng GiaoVien

 Thêm thuộc tính Luong vào bảng giáo viên

 Cài đặt các RBTV miền giá trị

 Nhập liệu

- Về nhà: tạo CSDL quản lí chuyến bay và nhập liệu

Ngày đăng: 02/11/2012, 11:49

TỪ KHÓA LIÊN QUAN

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

w