1. Trang chủ
  2. » Luận Văn - Báo Cáo

bài tập cá nhân hệ quản trị cơ sở dữ liệu

20 0 0
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 đề Bài Tập Cá Nhân Hệ Quản Trị Cơ Sở Dữ Liệu
Tác giả Võ Văn Trí
Người hướng dẫn Giảng Viên Hướng Dẫn
Trường học Đại Học Duy Tân
Chuyên ngành Công Nghệ Thông Tin
Thể loại bài tập cá nhân
Năm xuất bản 2024
Thành phố Đà Nẵng
Định dạng
Số trang 20
Dung lượng 1,43 MB

Nội dung

use QLNVien;-- Bang phòng banCreate Table Phong MaPhong char10 not null, TenPhong nvarchar50 not null, DiaDiem nvarchar100 not null, soNV int,constraint pk_MaPhong primary key MaPhong,

Trang 1

ĐẠI HỌC DUY TÂN

Khoa CNTT

BÀI TẬP CÁ NHÂN

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU



Họ và tên sinh viên: Võ Văn Trí

Mã số sinh viên : 27211233739 Giảng viên hướng dẫn:

LỚP : IS 401 BD

ĐÀ NẴNG, NGÀY 22 THÁNG 2 NĂM 2024

Trang 2

use QLNVien;

Bang phòng ban

Create Table Phong

(

MaPhong char(10) not null,

TenPhong nvarchar(50) not null,

DiaDiem nvarchar(100) not null,

soNV int,

constraint pk_MaPhong primary key (MaPhong),

constraint ch_SoNV check (SoNV>= )0

);

Bang nhân viên

Create Table NhanVien

MaNV char (10)not null,

Holot nvarchar(30)not null,

TenNV nvarchar(10)not null,

SDT varchar (20),

MaPhong char(10) not null,

constraint pk_MaNV primary key (MaNV),

constraint fk_MaPhong foreign key (MaPhong) REFERENCES Phong MaPhong) );

Bang dự án

Create Table Duan(

MaDA char (10)not null,

TenDA nvarchar(100) not null,

Kinhphi float,constraint pk_MaDA primary key (MaDA),

constraint ch_kinhphi check (kinhphi>= )0

);

Bang nhân viên dự án

Create Table NVDA(

MaNV char (10)not null,

MaDA char (10)not null,

sogio int,

constraint pk_a primary key (MaNV MaDA, ),

constraint fk_MaNV foreign key (MaNV ) REFERENCES Nhanvien MaNV), constraint fk_MaDA foreign key (MaDA ) REFERENCES DuAn MaDA),

constraint ch_sogio check (sogio>= )0

);

Thêm trường cho bang phòng

alter table Phong

ADD Diachi nvarchar (100);

Select From Phong

Thêm dữ liệu cho bang Phòng

insert into Phong

values (N'Phòng 1' N'Phòng Tổ, Chức A' N'Đà NẵFng',N'10',N'5 Ngổ QuyêGn'); insert into Phong

values (N'Phòng 2' N'Phòng Tổ, Chức B' N'Đà NẵFng',N'8',N'5 Ngổ QuyêGn'); insert into Phong

values (N'Phòng 3' N'Phòng Tổ, Chức C' N'Đà NẵFng',N'9',N'5 Ngổ QuyêGn'); insert into Phong

values (N'Phòng 4' N'Phòng Tổ, Chức D' N'Đà NẵFng',N'11' N'5 , Ngổ QuyêGn'); insert into Phong

values (N'Phòng 5' N'Phòng Tổ, Chức E' N'Đà NẵFng',N'12',N'5 Ngổ QuyêGn'); Select From Phong

Thêm dữ liệu cho bang Nhân Viên

Select from NhanVien

Trang 3

Bang phòng ban

Create Table Phong

(

MaPhong char(10) not null,

TenPhong nvarchar(50) not null,

DiaDiem nvarchar(100) not null,

soNV int,

constraint pk_MaPhong primary key (MaPhong),

constraint ch_SoNV check (SoNV>= )0

);

Bang nhân viên

Create Table NhanVien

MaNV char (10)not null,

Holot nvarchar(30)not null,

TenNV nvarchar(10)not null,

SDT varchar (20),

MaPhong char(10) not null,

constraint pk_MaNV primary key (MaNV),

constraint fk_MaPhong foreign key (MaPhong) REFERENCES Phong MaPhong) );

Bang dự án

Create Table Duan(

MaDA char (10)not null,

TenDA nvarchar(100) not null,

Kinhphi float,constraint pk_MaDA primary key (MaDA),

constraint ch_kinhphi check (kinhphi>= )0

);

Bang nhân viên dự án

Create Table NVDA(

MaNV char (10)not null,

MaDA char (10)not null,

sogio int,

constraint pk_a primary key (MaNV MaDA, ),

constraint fk_MaNV foreign key (MaNV ) REFERENCES Nhanvien MaNV), constraint fk_MaDA foreign key (MaDA ) REFERENCES DuAn MaDA), constraint ch_sogio check (sogio>= )0

);

Trang 4

alter table Phong

ADD Diachi nvarchar (100);

Select From Phong

Thêm dữ liệu cho bang Nhân Viên

insert into NhanVien

values (N'NV01' N'Lê' N'L' N'0999888776', , , ,N'Phòng 1'); insert into NhanVien

values (N'NV02' N'Lê' N', , LI',N'0999888444',N'Phòng 1'); insert into NhanVien

values (N'NV03' N'Lê' N'' N'0999888555', , , ,N'Phòng 2'); insert into NhanVien

values (N'NV04' N'Lê' N'Đ' N'0999888666', , , ,N'Phòng 3'); insert into NhanVien

values (N'NV05' N'Lê' N'N' N'0999888777', , , ,N'Phòng 4'); insert into NhanVien

values (N'NV06' N'Lê’ N'H' N'0999888799', , , ,N'Phòng 5'); insert into NhanVien

values (N'NV07' N'Lê' N'K' N'0999888789', , , ,N'Phòng 5');

Thêm dữ liệu cho bang Dự Án

select from Duan

insert into Duan

values (N'DA01' N'Xây nhà 1 TâG, ng',N'3000000'); insert into Duan

values (N'DA02' N'Xây nhà TâG, 2 ng',N'3000000'); insert into Duan

values (N'DA03' N'Xây nhà TâG, 3 ng',N'3000000'); insert into Duan

values (N'DA04' N'Xây nhà TâG, 4 ng',N'3000000'); insert into Duan

values (N'DA05' N'Xây nhà TâG, 5 ng',N'3000000');

Trang 5

select from NVDA

insert into NVDA

values (N'NV01' N'DA01' N', , 100');

insert into NVDA

values (N'NV02' N'DA01' N'100’, , );

insert into NVDA

values (N'NV03' N'DA01' N', , 100');

insert into NVDA

values (N'NV04' N'DA02' N', , 50');

insert into NVDA

values (N'NV05' N'DA03' N'48', , );

insert into NVDA

values (N'NV06' N'DA04' N', , 45');

insert into NVDA

values (N'NV07' N'DA05' N', , 200');

tẠO BANG có câSu trúc như sau LUUNV1 (MANV, TENNV,MaPhong)

drop table LuuNVPhong1

create table LuuNVPhong1

(

MaNV Char(10)not null,

TenNV nvarchar (10) not null,

MaPhong char(10) not null,

constraint pk_MaNV1 primary key (MaNV)

);

MuổSn xóa ban sư dụng câu lệnh ở dưới

drop table Phong

drop table Duan

drop table Nhanvien

drop table NVDA

- Xóa dữ liệu cua bang

delete from NhanVien

-select from LuuNVPhong1

insert into LuuNVPhong1

Select MaNV,TenNV MaPhong , From NhanVien

Where MaPhong = 'Phòng 1';

-select from LuuNVPhong1

insert into LuuNVPhong1

Select MaNV,TenNV MaPhong , From NhanVien

Where MaPhong = 'Phòng 1';

Cập nhật dữ liệu

update phong

set diadiem =N'CâGn Thở'

Where Maphong = "P1"

Trang 6

Update diadiem = N'CâGn Thở'

Where Maphong = "P1"

Cập nhật lai mã phòng cho nhân viên 1 và nhân viene 2

Cập nhập dữ liệu cho bang phòng

Update Phong

set DiaChi = N'CâGn Thở'

where MaPhong = 'Phòng 1';

Bài 2

Update NhanVien

Set MaPhong ='Phòng 1'

where MaNV = 'NV01';

Tẵng kinh phí thêm 10%

Update Duan

set KinhPhi = 1.1 KinhPhi* ;

Tẵng thêm 10% nưã cho dự án 01

Update Duan

set KinhPhi = 1.1 KinhPhi*

Where MaDA = 'DA01'

Select from Duan

/*Cập nhật dữ liệu

Update nhatkybanhang

set thanhtien = Soluong * dongia

from mathang

where nhatkybanhang.mahang = mahang.mahang */

/* Xóa dữ liệu cua bang

delete from NhanVien

[from danh sách bang]

[where điêGu kiện]

-*/

- Xóa những dự án có sổS giờ nho hởn 5

delete from NVDA

where Sogio <'46';

Xóa nhunbwgx dự án éo có kinh phí

delete from Duan

where KinhPhi = '0'

Xóa những nhân viên phòng tổ chức sự kiện

delete from NhanVien

from Phong

where (TenPhong =N'Phòng Tổ Chức A') and Phong.MaPhong NhanVien= MaPhong);

-Bài tập

-Hiên thị thổng tin ban nhân viên

Trang 7

SELECT MaNV,TenNV FROM NhanVien;

Hiên thị thổng tin MaNV , HoLot , TenNV đổi tên trường thành tiêSng việt

Select MaNV ASN'Mã Nhân Viên', HoLot ASN'Họ Lót Cua Nhân Viên', TenNV AS

N'Tên Cua Nhân Viên' from NhanVien;

Có 3 cách đê đổi tên trường

tiêu_đêG_cột tên_trường=

tên_trường tiêu_đêG_cột

tên_trường AS tiêu_đêG_cột

Hiên THị thổng tin Họ và Tên Nhân Viên

Select [HoLot] +' '+[TenNV]+' ' 'Bê Đê'+ AS N'Họ Và Tên Nhân Viên'from NhanVien;

Tính tổng sổS nhân viên

Selectcount(*) asN'Tổng SổS Nhân Viên'from NhanVien;

Hiên thị 2 nhân viên đâGu tiên

Select Top 2 *from NhanVien;

Hiên thị 2 nhân viên đâGu tiên và lưu bang có tên Nhân Viên Top 2

Select Top 2 *into NhanVienTop2 from NhanVien;

select from NhanVienTop2;

Hiên thị 20% nhân viên

select top 30 percent from NhanVien;

Hiên thị nhân viên đã nhận dự án

SELECT * FROM NhanVien

Select DISTINCT MaNV from NVDA;

Hiên thị những nhân viên họ NguyêFn

select from NhanVien where HoLot LIKEN'Lê Vẵn';

select * from NhanVien where HoLot NOT LIKE N'Lê Vẵn'; ( NêSu như phu định) Các điêGu kiện lọc >,<,=

And , or ,like , not like, in , not in , between , not between Hiên thị những nhân viên NV01 , NV07 , NV 04

select from NhanVien where MaNV IN 'NV01' 'NV07' 'NV04', , );

HOẶC where MaNV = 'NV01' OR MaNV = 'NV07' OR MaNV = 'NV 04';

Hiên thị những nhân viên bẵSt đâGu từ chữ L

select from NhanVien where TenNV Like 'L%');

select from NhanVien where TenNV Not Like 'L%'); Hiện những tên ko có

Trang 8

- Checkbox là dúng OR , còn Options And

Hiên thị thổng tin MaNV, TenNV , TenPhong, MaPhong

select MaNV , TenNV A MaPhong TenPhong , , from NhanVien A Phong B,

where A.MaPhong B MaPhong = and TenNV Not Like 'L%');

Hiên thị thổng tin MaNV , TenNV , MaDA, TenDA

select A.MaNV TenNV B MaDA TenDA , , , from NhanVien A Duan B NVDA C, , Where ( A MaNV C MaNV = ) And ( B MaDA C= MaDA);

- Bài tập vêG nhà

ViêSt tiêSp 10 câu lệnh select trong DP_PVMS

Bài tập về nhà

Create database DB_PVMS1

Use DB_PVMS1

CREATE table T_CUSTOMER

(

CUSTUMER_ID Char(10) not null,

CUSTUMER_NAME nvarchar(100)not null, tên KHÁCH HÀNG

CUSTUMER_ADDRESS nvarchar(100)not null, địa chỉ

CITY nvarchar(50)not null,

STATE nvarchar (50 ) not null, Tình trạng

POSTAL_CODE nvarchar(50) not null, Mã bưu điện

constraint pk_CUSTMER_ID primary key (CUSTUMER_ID)

);

create table T_ORDER

(

ORDER_ID CHAR(10)NOT NULL,

ORDER_DATE DATE NOT NULL,

CUSTUMER_ID CHAR(10) NOT NULL,

constraint pk_ORDER_ID primary key (ORDER_ID),

constraint fk_CUSTUMER_ID foreign key (CUSTUMER_ID) REFERENCES T_CUSTOMER (CUSTUMER_ID)

);

create table T_ORDER_LINE

(

ORDER_ID CHAR(10)NOT NULL,

PRODUCT_ID CHAR(20) NOT NULL,

ORDERED_QUANTRI INT,

constraint pk_a primary key (ORDER_ID PRODUCT_ID, ),

constraint fk_ORDER_ID foreign key (ORDER_ID)REFERENCES T_ORDER ORDER_ID), constraint fk_PRODUCT_ID foreign key (PRODUCT_ID)REFERENCES T_PRODUCT (PRODUCT_ID),

constraint ch_ORDERED_QUANTRI check (ORDERED_QUANTRI 0> )

);

Trang 9

PRODUCT_ID CHAR(20) NOT NULL,

PRODUCT_DESCRIPTION NVARCHAR(100) NOT NULL, MÔ TA SAN PHẨM

PRODUCT_FINISH NVARCHAR(50)NOT NULL,

STANDARD_PRICE int, giá chuân

PRODUCT_LINE_ID NVARCHAR(50), DÒNG SAN PHẨM

constraint pk_PRODUCT_ID primary key (PRODUCT_ID),

constraint ch_STANDARD_PRICE check(STANDARD_PRICE > )0 );

drop table T_CUSTOMER

drop table T_ORDER_LINE

drop table T_ORDER

drop table T_PRODUCT

- BẵSt đâGu nhập dữ liệu

- Nhập dữ liệu cho bang T_CUSTOMER

select from T_CUSTOMER

insert into T_CUSTOMER

values (N'KH01' N'Lê Nhật Đẵng', ,N'5 Ngổ QuyêGn' N'Đà ,

NẵFng' N'Kho, e' N'MBD001001', );

insert into T_CUSTOMER

values (N'KH02' N'Lê Nhật Phong' N'5 Ngổ QuyêG, , n' N'Đà ,

NẵFng' N'Kho, e' N'MBD001002', );

insert into T_CUSTOMER

values (N'KH03' N'Lê Nhật Ngọc' N'5 Ngổ QuyêG, , n' N'Đà ,

NẵFng' N'Kho, e' N'MBD001003', );

insert into T_CUSTOMER

values (N'KH04' N'Lê Nhật HiêS, u' N'5 Ngổ QuyêG, n' N'Đà ,

NẵFng' N', KHỏe' N'MBD001004', );

insert into T_CUSTOMER

values (N'KH05' N'Lê Nhật Khiêm' N'5 Ngổ QuyêG, , n' N'Đà ,

NẵFng' N'ÔS, m' N'MBD001005', );

Nhập dữ liệu cho bang T_ORDER

select from C

insert into T_ORDER

values (N'ORDER1' N'07/31/2021' N'KH01', , );

insert into T_ORDER

values (N'ORDER2' N'08/21/, 2023',N'KH02');

insert into T_ORDER

values (N'ORDER3' N'09/21/, 2022',N'KH03');

insert into T_ORDER

values (N'ORDER4' N'10/21/, 2020',N'KH04');

insert into T_ORDER

values (N'ORDER5' N'11/21/, 2024',N'KH05');

Nhập dữ liệu bang T_ORDER_LINE

select from T_ORDER_LINE

INsert into T_ORDER_LINE

values (N'ORDER1' N'SA, N PHẨM 1',N'1');

INsert into T_ORDER_LINE

values (N'ORDER2' N'SA, N PHẨM 2' N' 2', );

INsert into T_ORDER_LINE

values (N'ORDER3' N'SA, N PHẨM 3',N'3');

INsert into T_ORDER_LINE

N PHẨM 4' N' 4'

Trang 10

values (N'ORDER5' N'SA, N PHẨM 5',N'5');

delete T_ORDER_LINE;

delete T_ORDER

delete T_CUSTOMER

delete T_PRODUCT

NHẬP DỮ LIỆU BANG T_PRODUCT

SELECT FROM T_PRODUCT

INSERT INTO T_PRODUCT

VALUES (N'SAN PHẨM 1' N'DÙNG ĐỂ VỢT MUÔFI' N'ĐÃ HOÀN , ,

THIỆN' N'300000' N'ID001', , );

INSERT INTO T_PRODUCT

VALUES (N'SAN PHẨM 2' N'DÙNG ĐỂ CHIỂSU SÁNG ĐƯỜNG ĐỂM' N'ĐÃ HOÀN , ,

THIỆN' N'400000' N'ID002', , );

INSERT INTO T_PRODUCT

VALUES (N'SAN PHẨM 3' N'DÙNG ĐỂ BẨFY CHUỘT' N'ĐÃ HOÀN , ,

THIỆN' N'500000' N'ID003', , );

INSERT INTO T_PRODUCT

VALUES (N'SAN PHẨM 4' N'DÙNG ĐỂ BẮST CÁ' N'ĐÃ HOÀN THIỆN', , ,N'600000' N'ID004', ); INSERT INTO T_PRODUCT

VALUES (N'SAN PHẨM 5' N'DÙNG ĐỂ CHỤP A, NHI',N'ĐÃ HOÀN

THIỆN' N'700000' N'ID005', , );

ViêSt 5 câu lệnh cập nhật dữ liệu

update T_CUSTOMER

Set STATE N'Khoe 'A

WHERE CUSTUMER_ID ='KH01';

update T_CUSTOMER

Set STATE N'Khoe '

WHERE CUSTUMER_ID ='KH04';

update T_PRODUCT

Set PRODUCT_DESCRIPTION = N'AAA'

WHERE PRODUCT_ID ='SAN PHẨM 2';

update T_PRODUCT

Set PRODUCT_DESCRIPTION = N'BBB'

WHERE PRODUCT_ID ='SAN PHẨM 3';

update T_CUSTOMER

Set CUSTUMER_NAME =N'CCC'

WHERE CUSTUMER_ID ='KH05';

ViêSt 5 câu lệnh xóa dữ liệu

select from T_ORDER

delete from T_ORDER

where ORDER_ID = N'ORDER1';

delete from T_ORDER

where ORDER_ID = N'ORDER';

delete from T_ORDER

where ORDER_ID = N'ORDER3';

Trang 11

where ORDER_ID = N'ORDER4';

delete from T_ORDER

where ORDER_ID = N'ORDER5';

Truy xuâSt dữ liệu với câu lệnh SELECT

/* Cus pháp chung cua câu lệnh SELECT có dạng

S

Bài

Tập -1 Cho biêt khác hàng có tên bẵSt đâGu từ chữ L

*/

1

T_CUSTOMER CUSTUMER_NAME

2 cHO BIETES c_id c_name C_ADDRES cu, , a những khách hàng ở thành phổS "Đà nẮFNG"

CUSTUMER_ID CUSTUMER_NAME CUSTUMER_ADDRESS T_CUSTOMER

CITY =(N'ĐÀ NẮFNG');

3 Hiên thị thổng tin khách hàng đổi tên trường Mã só Họ Tên Khách Địa : , , Chỉ

CUSTUMER_ID

select AS N'Mã SổS Nhân Viên' CUSTUMER_NAME , as N'Họ Tên Khách', CUSTUMER_ADDRESS N'Địa Chỉ'FROM T_CUSTOMER;

4 Hiên thị C_ID cua những khách hàng đã tham gia mua hàng

select count(distinct (CUSTUMER_ID)) ASN'Các Khách Hàng Đã Mua Hàng'from T_ORDER;

5 Hiên Thị thổng tin 5 khách hàng đàu tiên T_cus_tops

5 T_CUSTOMER

Hiên thị thổng tin C_ID, C_NAME, P_ID,P_NAME, ORDER_Q,S_PRICE_TOTAL

CUSTUMER_ID CUSTUMER_NAME PRODUCT_ID PRODUCT_FINISH

ORDER_QUANTRI, STANDARD_PRICE TOTAL,

T_CUSTOMER A T_ORDER B T_ORDER_LINE C T_PRODUCT D

WHERE ( A = CUSTUMER_ID) AND ( C = PRODUCT_ID);

Hiên thị những mặt hàng có giá từ

Hiên thị những mặt hàng có mã (a , b , c , d)

Hiên thị thổng tin hóa đởn trong tháng 8 nẵm 2020 mua những mặt hàng nào

Trang 12

Ví dụ VIDU

Create database VIDU

Use VIDU

CREATE table HOCPHAN

(

MAHP nvarchar (10)not null,

TENHP nvarchar (50) not null,

SISO int,

constraint pk_MAHP primary key (MAHP)

);

CREATE table DANGKI

(

MASV nvarchar (10)not null,

MAHP nvarchar (10)not null,

constraint pk_MASV primary key (MASV MAHP),,

constraint fk_MAHP foreign key (MAHP ) references HOCPHAN MAHP) );

Trang 13

insert into HOCPHAN

values ('IS401', 'HQTCSDL','5');

insert into HOCPHAN

values ('IS301', 'CSDL', '3');

insert into HOCPHAN

values ('IS201', 'TINUD', '10');

select from HOCPHAN

IF ELSE

ViêSt lệnh thêm 1 đẵng ký cho SV có mã S1 vào học phâGn 'IS401', nêSu ss đk >

ss

lớp Is401 thì đki thành cổng,ngược lại đki thâSt bại

DECLARE @siso int

DECLARE @sisodk int

select @siso = SISO from HOCPHAN

where MAHP = 'IS401'

select @sisodk = count(*)from DANGKI

where MAHP = 'IS401';

if @siso > @sisodk

begin

INSERT INTO DANGKI VALUES('S5' 'IS401', );

PRINT N'ĐẮNG KÝ THÀNH CÔNG';

end

else

PRINT N'ĐẮNG KÝ KHÔNG THÀNH CÔNG';

Tạo bẵng sinh viên

CREATE table SINHVIEN

(

MASV intnot null,

HOTEN nvarchar (40) not null

constraint pk_MASV1 primary key (MASV)

);

chèn dữ liệu cho sinh viên

select from SINHVIEN

insert into SINHVIEN

values ( ,1N'A');

insert into SINHVIEN

values ( ,2N'B');

insert into SINHVIEN

values ( ,5N'C');

insert into SINHVIEN

values ( ,7N'D');

while

ViêSt 1 đoạn vẵn xác định 1 mã SV mới theo qui định như sau:

Mã SV tẵng dâGn, nêSu còn chổF trổSng thì chèn vào(vd: 1,2,5,7 thì sv mới sẽ là 3)

DECLARE @stt int

SET @stt = 1

while exists(select from SINHVIEN where MASV = @stt)

SET @stt = @stt 1+ ;

insert into SINHVIEN

values(@stt , N'NguyêFn Vẵn A');

select from SINHVIEN

Tạo bang nhân viên

CREATE table NHANVIEN

(

Ngày đăng: 01/05/2024, 21:27

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

TÀI LIỆU LIÊN QUAN

w