Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 17

TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG

KHOA CÔNG NGHỆ THÔNG TIN

KỲ THI KẾT THÚC HỌC PHẦN


HỌC KỲ I NĂM HỌC 2021-2022

Đề tài bài tập : tạo cơ sở dữ liệu quản lý bán hàng

Họ và tên sinh viên: Đỗ Thành Long

Lớp: DH10 C5

Mã sinh viên: 20111138774

Tên học phần: Ngôn ngữ SQL

Giảng viên hướng dẫn: Nguyễn Thị Hồng Loan

Thái Bình, ngày 14 tháng 04 năm 2022


2
Phần nội dung
I) Mô tả yêu cầu bài toán.
1. Công ty X có nhiều cửa hàng được đặt tại nhiều tỉnh khác nhau.Mỗi cửa
hàng lưu thông tin về tên tỉnh đặt cửa hàng, tên quản lý của cửa hàng,
địa chỉ cửa hàng, số điện thoại của cửa hàng. Những cửa hàng khác
nhau có mã số khác nhau, thông tin khác nhau và là duy nhất.
2. Bảng mã khách hàng được ghi lại với mỗi khách hàng có 1 mã hiệu duy
nhất lưu trữ tên khách hàng, họ đệm, số điện thoại và địa chỉ khách
hàng.
3. Bảng nhà cung cấp lưu thông tin về các công ty cung cấp nguồn hàng
cho công ty X. Mỗi công ty cung cấp nguồn hàng đều có mã số riêng,
tên riêng. Mã số của công ty cung cấp là duy nhất.
4. Bảng mặt hàng lưu thông tin về các mặt hàng mà công ty X nhập khẩu.
mỗi mặt hàng đều có mã mặt hàng, tên mặt hàng, loại mặt hàng, trọng
lượng của mặt hàng, màu, số lượng đang có trong kho, giá mua, giá
bán, mỗi mặt hàng đều có 1 mã mặt hàng duy nhất.
5. Bảng đơn hàng lưu thông tin về các đơn hàng mà các đại lý đến các cửa
hàng đại diện đặt mua hàng. Bảng lưu 1 số thông tin như mã đơn hàng,
mỗi đơn hàng có 1 mã hiệu duy nhất, ngày lập đơn hàng, mã khách
hàng và mã cửa hàng.
6. Bảng chi tiết đơn hàng lưu trữ các thông tin về đơn hàng 1 cách chi tiết
như mã đơn hàng, mã mặt hàng mua, số lượng đặt mua, giá, ngày giao
dự kiến.
7. Bảng giao hàng lưu thông tin về các lần giao hàng cho các đại lý và chỉ
lưu 1 số thông tin chính của hóa đơn giao hàng như mã giao hàng, ngày
giao hàng, mã khách hàng và mã cửa hàng.
8. Bảng chi tiết giao hàng lưu các thông tin như mã giao hàng, mã đặt
hàng, số lượng giao và mã đơn hàng.

3
II) Thông tin bảng:
1. Bảng CUA_HANG:
CREATE TABLE CUA_HANG(
Ma_CH CHAR(4),
Tinh_CH VARCHAR(15),
Quan_Ly_CH VARCHAR(30),
Dia_Chi_CH VARCHAR(50),
Tel_CH VARCHAR(13)
PRIMARY KEY (Ma_CH)
)

2. Bảng KHACH_HANG:
CREATE TABLE KHACH_HANG(
Ma_KH CHAR(4),
Ten_KH VARCHAR (7),
Ho_Dem_CH VARCHAR (25),
Dia_Chi_CH VARCHAR (50),
Tel_KH VARCHAR(13)
PRIMARY KEY (Ma_KH))

4
3. Bảng NHA_CUNG_CAP:
CREATE TABLE NHA_CUNG_CAP(
Ma_NCC CHAR(4),
Ten_NCC VARCHAR(7),
PRIMARY KEY (Ma_NCC))

4. Bảng MAT_HANG:
CREATE TABLE MAT_HANG(
Ma_MH CHAR(4),
Ten_MH VARCHAR (20),
Loai_MH VARCHAR(5),
Tluong_MH SMALLINT,
Mau_MH VARCHAR (25),
Ton_Kho_MH SMALLINT ,
Gia_Mua_MH SMALLINT,
Gia_Ban_MH SMALLINT,
Ma_NCC CHAR (4) FOREIGN KEY
REFERENCES dbo.NHA_CUNG_CAP(Ma_NCC)
PRIMARY KEY (Ma_MH))

5
5. Bảng DON_HANG:
CREATE TABLE DON_HANG(
Ma_DH CHAR(7) ,
Ngay_Lap_DH SMALLDATETIME,
Ma_KH CHAR(4)FOREIGN KEY
REFERENCES dbo.KHACH_HANG(Ma_KH),
Ma_CH CHAR(4) FOREIGN KEY
REFERENCES dbo.CUA_HANG(Ma_CH)
PRIMARY KEY (Ma_DH))

6. Bảng CHI_TIET_DH:
CREATE TABLE CHI_TIET_DH(
Ma_DH CHAR(7),
Ma_MH CHAR (4),
Sluong_dat SMALLINT,
Gia SMALLINT,
Ngay_Giao_DK SMALLDATETIME
FOREIGN KEY (Ma_DH)
REFERENCES dbo.DON_HANG(Ma_DH),
FOREIGN KEY (Ma_MH)
REFERENCES dbo.MAT_HANG(Ma_MH),
PRIMARY KEY (Ma_DH,Ma_MH))

6
7. Bảng GIAO_HANG:
CREATE TABLE GIAO_HANG(
Ma_GH CHAR(7) PRIMARY KEY,
Ngay_GH SMALLDATETIME,
Ma_KH CHAR(4) FOREIGN KEY
REFERENCES dbo.KHACH_HANG(Ma_KH),
Ma_CH CHAR(4) FOREIGN KEY
REFERENCES dbo.CUA_HANG(Ma_CH))

8. Bảng CHI_TIET_GH:
CREATE TABLE CHI_TIET_GH(
Ma_GH CHAR(7),
Ma_MH CHAR (4),
Sluong_giao SMALLINT,
Ma_DH CHAR(7) FOREIGN KEY
REFERENCES dbo.DON_HANG(Ma_DH),
FOREIGN KEY (Ma_GH)
REFERENCES dbo.GIAO_HANG(Ma_GH),
FOREIGN KEY (Ma_MH)
REFERENCES dbo.MAT_HANG(Ma_MH),
PRIMARY KEY (Ma_GH,Ma_MH))

7
III) Liên kết bảng:

IV) Insert dữ liệu vào bảng:


1. Bảng CUA_HANG:
INSERT INTO CUA_HANG
VALUES ('CH01','Ha Noi','Nguyen An Binh','Cau Giay-Ha Noi','047547100'),
('CH02','Ha Nam','Le Hoang Lan','Phu Ly-Ha Nam','3517678808'),
('CH03','Hai Phong','Nguyen Anh Dung','Cat Dai-Hai Phong','0318437855'),
('CH04','Hai Duong','Vu Van Tan','Tran Hung Dao-Hai Duong','3207595555'),
('CH05','Thai Binh','Nguyen Ngoc Duong','Nguyen Thai Hoc-Thai Binh','0363477777'),
('CH06','Ha Tay','Vu Thanh Thuy','Ba Vi-Ha Tay','0347527756'),
('CH07','Nam Dinh','Le Anh Tuan','Tran Hung Dao-Nam Dinh','034566666'),
('CH08','Thanh Hoa','Tran Xuan Nam','Le Hong Phong-Thanh Hoa','0373564444'),
('CH09','Nghe An','Pham Duc Cuong','Quang Trung-Nghe An','0385872892'),
('CH10','Thai Nguyen','Trinh Tuan Dat','Tran Hung Dao-Thai Nguyen','0384828333'),
('CH11','Phu Tho','Duong Thu Hang','Hung Vuong-Phu Tho','0384339800'),

8
('CH12','Yen Bai','Hoang Viet Hung','Quang Trung-Yen Bai','0303248023')
SELECT *FROM CUA_HANG

2. Bảng KHACH_HANG:

INSERT INTO KHACH_HANG


VALUES
('KH01','An','Phan Thanh','Ha Noi',null),
('KH02','Binh','Nguyen Ngoc','Ha Noi',null),
('KH03','Duong','Tran Hong','Ha Tay',null),
('KH04','Duyen','Nguyen Thi','Ha Nam',null),
('KH05','Giang','Nguyen Ho','Nam Dinh',null),
('KH06','Ha','Phan Thanh','Ha Tay',null),
('KH07','Huong','Nguyen Thi','Thanh Hoa',null),
('KH08','Huong','Mai Thu','Ha Nam',null),
('KH09','Khanh','Tran Xuan','Hai Duong',null),
9
('KH10','Lien','Tran Tuyet','Hai Phong',null),
('KH11','Luan','Tran Van','Hai Duong',null),
('KH12','Mai','Vu Thu','Nam Dinh',null),
('KH13','Minh','Hoang Duong','Bac Ninh',null),
('KH14','Nam','Dang Van','Yen Bai',null),
('KH15','Quang','Nguyen Huy','Hai Phong',null),
('KH16','Thanh','Nguyen Van','Hai Phong',null),
('KH17','Thang','Nguyen Son','Ha Noi',null),
('KH18','Trung','Tran Khac','Ha Noi',null),
('KH19','Truong','Nguyen Xuan','Thanh Hoa',null),
('KH20','Xuan','Le Thi Thanh','Thanh Hoa',null),
('KH21','Yen','Hoang Hai','Bac Ninh',null),
('KH22','Hoang','Tran Van','Yen Bai',null)
SELECT *FROM KHACH_HANG

10
3. Bảng MAT_HANG:
INSERT INTO MAT_HANG
VALUES
('MH01', 'SPACY', 'XM', '200', 'trang', '100', '35','40','CC01'),
('MH02', 'SPACY', 'XM', '200', 'den', '100', '35','40','CC01'),
('MH03', 'PIAGO', 'XM', null,null, '50', '50','55','CC02'),
('MH04', '@', 'XM', '200', 'trang', '200', '40','45','CC01'),
('MH05', '@', 'XM', '200', 'xanh duong', '150', '40','45','CC01'),
('MH06', 'DYLAN', 'XM', '250', 'do', '110', '60','70','CC01'),
('MH07', 'DYLAN', 'XM', '250', 'den', '20', '550','600','CC01'),
('MH08', 'DYLAN', 'XM', '250', 'trang', '15', '550','600','CC01'),
('MH09', 'CAMRY', 'OTO', '1500', 'ghi bac', '30', '700','750','CC04'),
('MH10', 'CAMRY', 'OTO', '1500', 'den', '30', '900','950','CC04'),
('MH11', 'MESCEDES', 'OTO', '800', 'den', '20', '890','940','CC03'),
('MH12', 'MESCEDES', 'OTO', '800', 'trang', '100', '5','7','CC03'),
('MH13', 'LAND CUISER', 'OTO', '2300', 'ghi bac', '20', '220','250','CC04'),
('MH14', 'LAND CUISER', 'OTO', '2300', 'xam bac', '20', '220','250','CC04'),
('MH15', 'LAND CUISER', 'OTO', '2300', 'trang', '30', '335','355','CC04'),
('MH17', 'PEUGIOT', 'XD', '30', null, '100', '5','7','CC06'),
('MH18', 'JOLIE', 'OTO', '1600', null, '20', '35','40','CC05'),
('MH19', 'RANGER', 'OTO', '1500', 'do', '30', '335','440','CC08'),
('MH20', 'RANGER', 'OTO', '1500', 'den', '50', '350','400','CC08'),
('MH21', 'EXCURSION', 'OTO', '2000', 'den', '70', '535','540','CC08'),
('MH22', 'EXCURSION', 'OTO', '2000', 'trang', '100', '400','430','CC08'),
('MH23', 'EXCURSION', 'OTO', '2000', 'xam bac', '40', '340','350','CC04'),
('MH24', 'ZACE', 'OTO', '1400', 'do', '90', '350','400','CC04'),
('MH25', 'ZACE', 'OTO', '1400', 'ghi bac', '100', '250','300','CC04')
SELECT *FROM MAT_HANG

11
4. Bảng NHA_CUNG_CAP:
INSERT INTO NHA_CUNG_CAP
VALUES
('CC01' ,'Honda'),
('CC02' ,'Vespa'),
('CC03' ,'Mecedes'),
('CC04' ,'Toyota'),
('CC05' ,'subishi'),
('CC06' ,'Peugiot'),
('CC07' ,'Yamaha'),
('CC08' ,'Ford')
SELECT *FROM NHA_CUNG_CAP

12
5. Bảng DON_HANG:

INSERT INTO DON_HANG


VALUES
('DH03001' ,'10/06/2003', 'KH02','CH01'),
('DH03002' ,'06/07/2003', 'KH09','CH04'),
('DH04001' ,'03/02/2004', 'KH01','CH01'),
('DH04002' ,'05/02/2004', 'KH03','CH01'),
('DH04003' ,'06/06/2004', 'KH08','CH07'),
('DH05001' ,'06/06/2005', 'KH07','CH03'),
('DH05002' ,'06/06/2005', 'KH06','CH02'),
('DH05003' ,'06/06/2005', 'KH03','CH01'),
('DH05004' ,'06/06/2005', 'KH01','CH02'),
('DH05005' ,'06/06/2005', 'KH08','CH01'),
('DH05006' ,'06/07/2005', 'KH05','CH04'),
('DH05007' ,'06/07/2005', 'KH04','CH01'),
('DH05008' ,'06/08/2005', 'KH03','CH02'),
('DH05009' ,'06/08/2005', 'KH10','CH01'),
('DH05010' ,'06/08/2005', 'KH01','CH01'),
('DH05011' ,'06/09/2005', 'KH12','CH01'),
('DH05012' ,'06/10/2005', 'KH05','CH04')
SELECT *FROM DON_HANG

13
6. Bảng CHI_TIET_DH:

INSERT INTO CHI_TIET_DH


VALUES
('DH05001' ,'MH04', '1','140','06/06/2005'),
('DH05002' ,'MH11', '2','2','06/06/2005'),
('DH05002' ,'MH14', '3','5','06/06/2005'),
('DH05003' ,'MH02', '1','230','06/06/2005'),
('DH05003' ,'MH03', '2','30','06/06/2005'),
('DH05003' ,'MH13', '5','4','06/06/2005'),
('DH05003' ,'MH14', '1','5','06/06/2005'),
('DH05003' ,'MH15', '1','5','06/06/2005'),
('DH05004' ,'MH05', '8','4','06/10/2005'),
('DH05004' ,'MH12', '1','149','06/10/2005'),
('DH05004' ,'MH13', '1','5','06/10/2005'),
('DH05004' ,'MH15', '10','4','06/10/2005')
SELECT *FROM CHI_TIET_DH

14
7. Bảng GIAO_HANG:

INSERT INTO GIAO_HANG


VALUES
('GH05001' ,'06/06/2005', 'KH07','CH03'),
('GH05002' ,'06/06/2005', 'KH06','CH12'),
('GH05003' ,'06/06/2005', 'KH13','CH01'),
('GH05004' ,'06/06/2005', 'KH08','CH11')
SELECT *FROM GIAO_HANG

15
8. Bảng CHI_TIET_GH:

INSERT INTO CHI_TIET_GH


VALUES
('GH05001' ,'MH04', '1','DH05001'),
('GH05002' ,'MH11', '2','DH05002'),
('GH05002' ,'MH14', '3','DH05002'),
('GH05003' ,'MH02', '1','DH05003'),
('GH05003' ,'MH04', '2','DH05003')
SELECT *FROM CHI_TIET_GH

16
V) 20 câu truy vấn dữ liệu:

1.

17

You might also like