Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 44 trang
THÔNG TIN TÀI LIỆU
Nội dung
Bàitậpthựchànhcơsởdữ liệu:
1
BÀI TẬPTHỰCHÀNHCƠSỞDỮLIỆU
Buổi 1:
Khởi động SQL server 2005
Start\Programs File\MicroSoft SQL Server 2005\SQL Server Management Studio
Xuất hiện hộp thoại sau
- Khai báo thông tin kết nối:
Server type: <chọn loại Server cần kết nối>
Server name: <chọn tên Server cần kết nối>
Bài tậpthựchànhcơsởdữ liệu:
2
Authentication: Chọn chế độ xác thực là Windows authentication hoặc SQL
Server authentication. Nếu chọn chế độ là SQL Server authentication thì phải cho
biết Login name (mặc định là sa) và Password.
- Chọn Connect. Nếu kết nối thành công thì cửa sổ Microsoft SQL Server Management
Studio xuất hiện
Bài tậpthựchànhcơsởdữ liệu:
3
- Nhấn nút New Query
Khi cài SQL Server xong, hệ thống sẽ tự động tạo một vài CSDL mặc định:
Master
Model
Tempdb
Msdb
Sinh viên khảo sát một số thông tin trong các cơsởdữliệucó sẵn ở trên.
Xem các CSDL bằng câu lệnh: SP_helpdb
Hai tập tin vật lý để lưu trữ dữ liệu:
o Lưu trữ dữliệu (data file)
o Lưu trữ các giao tác mà người dùng đã thực hiện (transaction log file)
Các tập tin CSDL trong SQL Server được chia thành 3 loại tập tin.
Tập tin dữliệu chính (Primary Data File). Phần mở rộng của tập tin này là *.mdf
Tập tin thứ yếu (Secondary Data Files) (không bắt buộc phải có khi tạo mới
CSDL). Phần mở rộng của tập tin này là *.ndf
Bài tậpthựchànhcơsởdữ liệu:
4
Tập tin lưu trữ (Log Files). Phần mở rộng là *.ldf
Các thuộc tính CSDL trong SQL Server
Tên CSDL (Database name): dài tối đa 128 ký tự, duy nhất trong SQL Server.
Vị trí tập tin (File location): Thông thường tập tin này sẽ được lưu tại
C:\Program Files\Microsoft SQL Server\MSSQL\ Data
Tên tập tin (File name): là tên luận lý của mỗi loại tập tin dữliệu tương ứng mà
hệ thống SQL Server dùng để quản lý bên trong.
Kích thước ban đầu (Initial size): là kích thước khởi tạo của tậ
p tin dữliệu khi
CSDL mới được tạo lập.
Tăng kích thước tập tin dữliệu (File growth)
Kích thước tối đa tập tin dữliệu (Maximun file size)
Ví dụ: Tạo CSDL có tên QLSV với kích thước ban đầu là 50 MB, tự động tăng kích
thước lên 10% khi dữliệu đầy, kích thước tăng trưởng tập tin tối đa không quá 200MB.
Và tập tin lưu vết với kích thước ban đầu lúc khởi tạo là 10MB, tự
động tăng kích thước
tập tin lên 5 MB khi dữliệu bị đầy, kích thước tăng trưởng tập tin không giới hạn.
Cách 1: Tạo trong Query Analyzer (bằng câu lệnh)
CREATE DATABASE QLSV
ON PRIMARY (NAME = QLSV,
FILENAME= ‘C:\Program Files\Microsoft SQL Server\MSSQL\Data\ QLSV.mdf’,
SIZE=50MB, MAXSIZE = 200MB,
FILEGROWTH = 10%, Đường dẫn có thể thay đổi tùy theo từng máy
LOG ON(NAME = QLSV_Log,
FILENAME= ‘C:\Program Files\Microsoft SQL Server\MSSQL\Data\ QLSV_Log.ldf',
SIZE=10MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5MB) Đường dẫn có thể
thay đổi tùy theo từng máy
Cách 2: Tạo trong Enterprise Manager (công cụ)
Right_Click vào Database/New Database
Bài tậpthựchànhcơsởdữ liệu:
5
Nhập tên CSDL vào
Sử dụng CSDL trên:
USE QLSV
Tạo một bảng đơn giản trong CSDL QLSV
Tên CSDL
Click
Bài tậpthựchànhcơsởdữ liệu:
6
CREATE TABLE LOP
( Malop char(6) NOT NULL,
TenLop varchar(20) NOT NULL,
SiSo smallInt NOT NULL
)
Tạo cấu trúc bảng có giá trị mặc định
CREATE TABLE LOP
( Malop char(6) NOT NULL,
TenLop varchar(20) NOT NULL,
SiSo smallInt Default 0
)
Tạo cấu trúc bảng có giá trị định danh
CREATE TABLE LOP
( Malop int Identity(1000,5),
TenLop varchar(20) NOT NULL,
SiSo smallInt Default 0
)
Sinh viên quan sát và cho biết ý nghĩa của (1000,5) trong cột MaLop.
Tạo bảng bằng Enterprise Manager
Right_click Tables/ New Table…
Bài tậpthựchànhcơsởdữ liệu:
7
Tạo các cột cho bảng
Đặt tên bảng
Thay đổi cấu trúc bảng
Thêm cột vào bảng
Ví dụ
: Thêm cột Nien_khoa có kiểu dữliệu int vào bảng LOP
ALTER TABLE LOP
ADD Nien_khoa int
Sửa đổi kiểu dữliệu của cột
Ví dụ:
Sửa kiểu dữliệu của cột Nien_khoa thành kiểu char gồm 9 kí tự.
Nhập tên thuộc tính
Kiểu dữliệu
Bài tậpthựchànhcơsởdữ liệu:
8
ALTER TABLE LOP
ALTER COLUMN Nien_khoa char(9)
Thay đổi tên cột
Ví dụ:
Thay đổi tên cột Nien_khoa thành khoa_hoc trong bảng LOP
EXEC sp_rename ‘LOP.nien_khoa’, ‘khoa_hoc’, ‘COLUMN’
Hủy bỏ cột hiện có bên trong bảng
Ví dụ:
Xóa cột Nien_Khoa trong bảng LOP
ALTER TABLE LOP
DROP COLUMN Nien_khoa
Thay đổi tên bảng
Ví dụ:
Thay đổi tên bảng LOP thành LOPHOC
EXEC sp_rename ‘LOP’, ‘LOPHOC’
Sinh viên có thể tạo một cơsởdữliệu khác để thực tập.
Bài tậpthựchànhcơsởdữ liệu:
9
Buổi 2:
Tạo CSDL QLDACT (Quản lý đề án công ty)
Create database QLDACT
Go
Use QLDACT
Go
Và tạo các bảng sau cho CSDL trên (chưa tạo RBTV):
CREATE TABLE PB PHONG BAN
( Maphg INT NOT NULL,
Tenphg VARCHAR(10),
ma_nql CHAR(9),
ng_nhanchuc DATETIME
);
go
CREATE TABLE NV - - NHANVIEN
( Manv CHAR(9) not null,
Honv VARCHAR(15),
Tenlot CHAR(15),
Tennv VARCHAR(15),
ngsinh DATETIME,
dchi VARCHAR(30),
phai CHAR(4),
ma_nql CHAR(9),
luong int ,
phg INT
);
go
Bài tậpthựchànhcơsởdữ liệu:
10
Create table DA DE AN
( Mada int not null,
Tenda varchar(15) not null,
Diadiem_da varchar(15),
phong int
);
go
Create table PC PHAN CONG
( Ma_nvien char(9) not null,
Mada int not null,
Thoigian decimal(3,1)
);
go
Create table TN - - THAN NHAN
( Ma_nvien char(9) not null,
Tentn char(10) not null,
Phai char(3),
Ngsinh datetime,
Quanhe
varchar(8)
);
Go
create table DD_P DIA DIEM PHONG
( Maphg int not null,
Diadiem varchar(10) not null,
);
Mở bảng NV thêm ràng buộc khóa ngoại.
alter table NV
add constraint NV_MaNV_PK primary key (MaNV)
[...]... 2 file đã có: Mở SQL server lên Right_lick vào Database/Attach Xuất hiện hộp thoại 28 Bàitậpthựchànhcơsởdữ liệu: Nhấn nút Add, chọn đường dẫn đến vị trí đã lưu, chọn tên CSDL cần sao lưu Nhấn OK 29 Bàitậpthựchànhcơsởdữ liệu: Buổi 3: Nhập dữliệu cho 2 cơsởdữliệu trong buổi 2 Nhập liệu cho cơsởdữliệu QLSV Bảng Khoa insert into Khoa (MaKH, TenKH) values('CNTT', 'Khoa Công nghệ thông... Lop_MH(Ma_LopMH) ); Sao lưu CSDL Rigth_Click vào tên cơsởdữ liệu/ Properties 26 Bàitậpthựchànhcơsởdữ liệu: Click vào Files để xem tên đường dẫn của hai file cần sao lưu Đóng cửa sổ Properties Right_click vào tên CSDL\Tasks\Detach Stop SQL Server, theo đường dẫn ở trên cut 2 file (QLSV và QLSV_LOG) lưu vào vị trí cần lưu 27 Bài tậpthựchànhcơsởdữ liệu: Cách tạo lại database từ 2 file đã có: Mở... create database QLSV go use QLSV go create table Khoa Khoa ( MaKH char(5) constraint Khoa_MaKH_Pk primary key, TenKH varchar(20) constraint Khoa_TenKH_UQ unique ); 23 Bài tậpthựchànhcơsởdữ liệu: go 24 Bài tậpthựchànhcơsởdữ liệu: create table SV Sinh viên ( MaSV char(10) TenSV varchar(30) not null, Nam int MaKH constraint SV_MaSV_Pk primary key, not null, char(5) constraint SV_MaKH_FK foreign... Chuỗi (30) Tên thân nhân 3 PHAI Chuỗi (4) Phái: Nam, Nữ 4 NGSINH Ngày (mm/dd/yyyy) Ngày sinh 5 QUANHE Chuỗi (10) Mối quan hệ của thân nhân với nhân viên 13 Bài tậpthựchànhcơsởdữ liệu: C Sơ đồ quan hệ của lược đồ 14 Bài tậpthựchànhcơsởdữ liệu: D Thể hiện của lược đồ quan hệ NHANVIEN HONV TENLOT TENNV MANV Nguyen Bao Hung 123456789 Phan Van Nghia Au Thi Vuong 999887777 Du Thi Hau 987654321 Tran... NV_Ma_nql_Fk foreign key (ma_nql) primary key, NOT NULL, NOT NULL, references NV(Manv), Luong Phg int , INT constraint NV_phg_Fk foreign key (phg) references PB(Maphg) ); go 17 Bàitậpthựchànhcơsởdữ liệu: 18 Bàitậpthựchànhcơsởdữ liệu: Create table DA ( Mada int constraint DA_MaNV_PK primary key, Tenda varchar(15) not null, Diadiem_da varchar(15), Phong int constraint DA_phong_Fk foreign key (phong)... ('123456789','Minh','Nam','1988-01-01','Con trai'); 34 Bàitậpthựchànhcơsởdữ liệu: insert into TN(Ma_nv,Tentn,Phai,Ngsinh,Quanhe) values ('123456789','Anh','Nu','198812-30','Con gai'); insert into TN(Ma_nv,Tentn,Phai,Ngsinh,Quanhe) values ('123456789','Yen','Nu','196705-05','Vo'); Buổi 4,5,6,7,8: Tạo truy vấn trên các cơsởdữliệu đã tạo trong buổi 3 Cơsởdữliệu QLSV: 1 In ra tên các sinh viên 2 In ra... MAMH_TRUOC Kiểu dữliệu Chuỗi (8) Chuỗi (8) Diễn giải Mã môn học Mã môn học Lop_MH (MAKH, MAMH, HOCKY, NAM, GV) STT Thuộc tính Kiểu dữliệu 1 MAKH Số nguyên 2 MAMH Chuỗi (8) 3 HOCKY Số nguyên 4 NAM Số nguyên 21 Diễn giải Mã khóa học Mã môn học Học kỳ Năm học mở khóa học Bàitậpthựchànhcơsởdữ liệu: 5 GV Chuỗi(10) KQ(MASV, MAKH, DIEM) STT Thuộc tính 1 MASV 2 MAKH 3 DIEM Kiểu dữliệuSố nguyên Số... KQ(MaSV,MaLopMH,Diem) values ('SV008',102,7) Nhập liệu cho cơsởdữliệu QLDACT Bảng PHÒNG BAN insert into PB(tenphg,maphg,ma_nql,ng_nhanchuc) values ('Nghien cuu',5,null,null); insert into PB(tenphg,maphg,ma_nql,ng_nhanchuc) values ('Dieu hanh',4,null,null); insert into PB(tenphg,maphg,ma_nql,ng_nhanchuc) values ('Quan ly',1,null,null); 31 Bàitậpthựchànhcơsởdữ liệu: Bảng NHÂN VIÊN insert into NV(Tennv,Tenlot,Honv,Manv,Ngsinh,Dchi,Phai,Luong,ma_nql,Phg)... 9 PHG Số nguyên Mã phòng ban 10 LUONG Sốthực Mức lương 12 Bàitậpthựchànhcơsởdữ liệu: DEAN(MADA, TENDA, DDIEM_DA, PHONG) STT Thuộc tính Kiểu dữliệu Diễn giải 1 MADA Số nguyên Mã đề án 2 TENDA Chuỗi (50) Tên đề án 3 DD_DA chuỗi (50) Địa điểm diễn ra đề án 4 PHONG Số nguyên Mã phòng quản lý đề án PHANCONG(MA_NVIEN, SODA, THOIGIAN) STT Thuộc tính Kiểu dữliệu Diễn giải 1 MA_NVIEN Chuỗi (9) Mã nhân.. .Bài tậpthựchànhcơsởdữ liệu: Mở bảng PB thêm ràng buộc khóa chính, khóa ngoại vào alter table PB add constraint pb_Maphg_pk primary key (Maphg), constraint ma_nql_fk foreign key (ma_nql) references Nv(manv) Xóa các bảng đã tạo drop table NV drop table PB Xóa luôn cơsởdữliệu vừa tạo drop database QLDACT A Các quan hệ NHANVIEN (HONV, . Bài tập thực hành cơ sở dữ liệu:
1
BÀI TẬP THỰC HÀNH CƠ SỞ DỮ LIỆU
Buổi 1:
Khởi động SQL server 2005
StartPrograms. nhân với nhân viên
Bài tập thực hành cơ sở dữ liệu:
14
C. Sơ đồ quan hệ của lược đồ
Bài tập thực hành cơ sở dữ liệu:
15
D. Thể hiện của