Tải bản đầy đủ (.docx) (42 trang)

SQL Quản lí web bán xe máy cuối kì_ Bài tập lớn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (672.65 KB, 42 trang )

MỤC LỤC
Chương I: Mô Hình Cơ Sở Dữ Liệu
1. Lập từ điển dữ liệu..................................................................................... 2
1.1. Bảng KhachHang....................................................................................2
1.2. Bảng MatHang ....................................................................................... 2
1.3. Bảng NhaCungCap .................................................................................3
1.4. Bảng NhanVien ...................................................................................... 4
1.5. Bảng PNhap............................................................................................ 4
1.6. Bảng PXuat............................................................................................. 5
1.7. Bảng CTPNhap....................................................................................... 5
1.8. BảngCTPXuat......................................................................................... 6
2. Mô hình dữ liệu vật lý Diagram..................................................................7

Chương II: Thiết kế code cho SQL
1.1. Tạo Bảng MatHang.................................................................................9
1.2. Tạo Bảng NhanVien................................................................................9
1.3. Tạo Bảng KhachHang.............................................................................10
1.4. Tạo Bảng NhaCungCap...........................................................................10
1.5. Tạo Bảng PNhap..................................................................................... 10
1.6. Tạo Bảng CTPNhap................................................................................ 11
1.7. Tạo Bảng PXuat...................................................................................... 11
1.8. Tạo Bảng CTPXuat.................................................................................12
2. Nhập dữ liệu cho các bảng.........................................................................13
2.1. Nhập Dữ Liệu Bảng MatHang.................................................................13
2.2. Nhập Dữ Liệu Bảng NhanVien................................................................14
2.3. Nhập Dữ Liệu Bảng KhachHang.............................................................16
2.4. Nhập Dữ Liệu Bảng NhaCungCap..........................................................17
2.5. Nhập Dữ Liệu Bảng PNhap.....................................................................18
2.6. Nhập Dữ Liệu Bảng CTPNhap................................................................19
2.7. Nhập Dữ Liệu Bảng PXuat......................................................................20
2.8. Nhập Dữ Liệu Bảng CTPXuat.................................................................22


3. Tạo các View.............................................................................................. 32
4. Tạo các Procedure...................................................................................... 23
4.1. Tạo Procedure bảng NhaCungCap .........................................................23
4.2 Tạo Procedure bảng KhachHang..............................................................28
Page | 1


5. Tạo các Trigger........................................................................................... 36

Chương IV . Tạo các thống kê
1.Tạo các thống kê......................................................................................... 40

Page | 2


Chương I : Mô Hình Cơ Sở Dữ Liệu
1. Lập từ điển dữ liệu
1.1 Bảng KhachHang
STT

Tên thuộc tính

Kiểu (Độ
rộng)

Ràng buộc Khóa
chính /
Khóa phụ
(PK/FK)


1

MAKHACHHANG

Nvarchar(50) Not null

2

TENKHACHHANG

Nvarchar(50) Not null

3

DIACHI

Nvarchar(50) Not null

4

DIENTHOAI

Nvarchar(50) Null

5

EMAIL

Nvarchar(50) Null


PK

Mô tả

Mã khách
hàng
Tên khách
hàng
Địa chỉ
khách hàng
Điện thoại
khách hàng
Email khách
hàng

1.2 Bảng MatHang

STT

Tên thuộc tính

Kiểu ( Độ rộng ) Ràng buộc Khóa
Mô tả
chính/
Khóa phụ
(PK/FK)

1

MAHANG


Nvarchar(50)

Not null

2

TENHANG

Nvarchar(50)

Not null

Tên hàng

3

NHASX

Nvarchar(50)

Not null

Nhà sản
xuất

PK

Mã hàng


Page | 3


4

SOLUONG

5

Int(4)

Not null

Số lượng

THONGTINBAOHAN Nvarchar(100)
H

Null

6

DONVITINH

Nvarchar(50)

Null

7


MOTA

Nvarchar(100)

Null

Thông
tin bảo
hành
Đơn vị
tính
Mô tả
hàng

1.3 Bảng NhaCungCap

STT
1

Tên thuộc tính
MANHACUNGCAP

Kiểu ( Độ
rộng )
Nvarchar(50)

Ràng
buộc

2


TENNHACUNGCAP

Nvarchar(50)

Not null

3

DIACHI

Nvarchar(50)

Not null

4

DIENTHOAI

Nvarchar(50)

Null

5

EMAIL

Nvarchar(50)

Null


Khóa
chính/
Mô tả
Khóa phụ
PK
Mã nhà
cung cấp
PK

Tên nhà
cung cấp
Địa chỉ
nhà cung
cấp
Điện thoại
nhà cung
cấp
Email nhà
cung cấp

Page | 4


1.4 Bảng NhanVien

Page | 5


STT


Tên thuộc tính

Kiểu ( Độ
rộng )

Ràng buộc

1

MANHANVIEN

Nvarchar(50) Not null

Khóa
Mô tả
chính/
Khóa phụ
(PK/FK)
PK
Mã nhân viên

2

TENNHANVIEN

Nvarchar(50) Not null

Tên nhân viên


3

NAM SINH

Int

Not null

Năm Sinh

4

GIOITINH

Char(10)

Not null

5

DIACHI

Nvarchar(50) Not null

6

DIENTHOAI

Nvarchar(50) Null


7

CHUC VU

Nvarchar(50) Not null

Giới tính nhân
viên
Địa chỉ nhân
viên
Điện thoại
nhân viên
Chức Vụ

8

LUONGCOBAN

Nvarchar(50) Not Null

Lương cơ bản

1.5 Bảng PNhap
STT

Tên thuộc tính

Kiểu ( Độ
rộng )


Ràng buộc

1

MAPN

Nvarchar(50) Not null

2

NGAYNHAP

Datatime(8)

3

MANHANVIEN

Nvarchar(50) Not null

FK

4

MANHACUNGCAP Nvarchar(50) Not null

FK

Not null


Khóa chính/ Mô tả
Khóa phụ
(PK/FK)
PK
Mã phiếu
nhập
Ngày nhập
Mã nhân
viên
Mã nhà
cung cấp

1.6 Bảng PXuat
Page | 6


STT

Tên thuộc tính

Kiểu ( Độ
rộng )

Ràng buộc

1

MAPX

Nvarchar(50) Not null


2

NGAYXUAT

Datatime(8)

3

MANHANVIEN

Nvarchar(50) Not null

FK

4

MAKHACHHANG Nvarchar(50) Not null

FK

Not null

Khóa chính/ Mô tả
Khóa phụ
(PK/FK)
PK
Mã phiếu
xuất
Ngày xuất

Mã nhân
viên
Mã khách
hàng

1.7 Bảng CTPNhap
STT

Tên thuộc tính

Kiểu ( Độ
rộng )

Ràng buộc

1

MAPN

Nvarchar(50) Not null

2

MAHANG

Nvarchar(50) Not null

3

SLNHAP


Int(4)

Not null

4

DONGIANHAP

Float(8)

Not null

5

THUE

Float(8)

Null

Ràng buộc

Khóa chính/ Mô tả
Khóa phụ
(PK/FK)
PK
Mã phiếu
nhập
PK

Mã hàng
Số lượng
hàng nhập
Đơn giá
nhập
Thuế

1.8 Bảng chi CTPXuat
STT

Tên thuộc tính

Kiểu ( Độ
rộng )

1

MAPX

Nvarchar(50) Not null

2

MAHANG

Nvarchar(50) Not null

3

SLXUAT


Int(4)

Not null

Khóa chính/ Mô tả
Khóa phụ
(PK/FK)
PK
Mã phiếu
xuất
PK
Mã hàng
Số lượng
Page | 7


4

DONGIAXUAT

Float(8)

Not null

5

THUE

Float(8)


Null

hàng xuất
Đơn giá
xuất
Thuế

2. Mô hình dữ liệu vật lý Diagram

Ảnh 1.2 : Diagram

Page | 8


Bảng dữ liệu mẫu : KhachHang

Bảng dữ liệu mẫu : NhaCungCap

Bảng dữ liệu mẫu : NhanVien

Page | 9


Chương II . Thiết kế code cho SQL
1. Tạo các bảng CSDL
1.1 Tạo bảng MatHang
CREATE TABLE MatHang
(
MAHANG NVARCHAR(50) NOT NULL

CONSTRAINT pk_MatHang
primary key(MAHANG),
TENHANG NVARCHAR(50) NOT
NULL, NHASX NVARCHAR(50) NOT
NULL,

)

SOLUONG INT NOT NULL,
THONGTINBAOHANH NVARCHAR(100)
NULL, DONVITINH NVARCHAR(50)
NULL,
MOTA NVARCHAR(100) NULL

1.2 Tạo bảng NhanVien
CREATE TABLE NhanVien
(
MANHANVIEN NVARCHAR(50) NOT
NULL, CONSTRAINT
pk_NhanVien
PRIMARY KEY(MANHANVIEN),
TENNHANVIEN NVARCHAR(50) NOT
NULL, NAMSINH INT NOT NULL,
GIOITINH CHAR(10) NOT NULL,
DIENTHOAI NVARCHAR(50) NULL,
DIACHI NVARCHAR(50) NOT NULL,
CHUCVU NVARCHAR(50) NOT NULL,
LUONGCOBAN NVARCHAR(50) NULL
)


1.3 Tạo bảng KhachHang
Page | 10


CREATE TABLE KhachHang
(
MAKHACHHANG NVARCHAR(50) NOT
NULL CONSTRAINT
pk_KhachHang
PRIMARY
KEY(MAKHACHHANG),
TENKHACHHANG NVARCHAR(50) NOT
NULL, DIACHI NVARCHAR(50) NOT
NULL, DIENTHOAI NVARCHAR(50)
NULL,
EMAIL NVARCHAR(50) NULL,
)
1.4 Tạo bảng NhaCungCap
CREATE TABLE NhaCungCap
(
MANHACUNGCAP NVARCHAR(50) NOT
NULL CONSTRAINT
pk_NhaCungCap
primary KEY(MANHACUNGCAP),
TENNHACUNGCAP NVARCHAR(50) NOT
NULL, DIACHI NVARCHAR(50) NOT
NULL, DIENTHOAI NVARCHAR(50) NULL,
EMAIL NVARCHAR(50) NULL,
)
2.5 Tạo bảng PNhap

CREATE TABLE PNhap
(
MAPN NVARCHAR(50) NOT NULL
CONSTRAINT pk_PNhap
PRIMARY KEY(MAPN),
MANHACUNGCAP NVARCHAR(50) NOT NULL,
CONSTRAINT fk_PNhap_NhaCungCap
FOREIGN KEY(MANHACUNGCAP)
REFERENCES NhaCungCap(MANHACUNGCAP)
ON DELETE CASCADE ON UPDATE
CASCADE, MANHANVIEN NVARCHAR(50)
NOT NULL

CONSTRAINT fk_PNhap_NhanVien
Page | 11


FOREIGN KEY(MANHANVIEN)
REFERENCES NhanVien(MANHANVIEN)
ON DELETE CASCADE ON UPDATE
CASCADE, NGAYNHAP DATETIME NOT
NULL,

)
1.6 Tạo bảng CTPNhap
CREATE TABLE CTPNhap
(
MAPN NVARCHAR(50) NOT NULL,
MAHANG NVARCHAR(50) NOT NULL,
SLNHAP INT NOT NULL,

THUE FLOAT,
DONGIANHAP FLOAT NOT NULL,
CONSTRAINT pk_CTPNhap
PRIMARY KEY(MAPN,MAHANG),
CONSTRAINT fk_CTPNhap_MatHang
FOREIGN KEY(MAHANG)
REFERENCES MatHang(MAHANG)
ON DELETE CASCADE ON UPDATE
CASCADE, CONSTRAINT
fk_CTPNhap_PNhap

FOREIGN KEY(MAPN)
REFERENCES PNhap(MAPN)
ON DELETE CASCADE ON UPDATE
CASCADE )
1.7 Tạp bảng Pxuat
CREATE TABLE PXuat
(
MAPX NVARCHAR(50) NOT NULL,
CONSTRAINT pk_PXuat
PRIMARY KEY(MAPX), NGAYXUAT
DATETIME NOT NULL,
MAKHACHHANG NVARCHAR(50) NOT
NULL,
CONSTRAINT fk_PXuat_KhachHang
FOREIGN KEY(MAKHACHHANG)
REFERENCES KhachHang(MAKHACHHANG)
Page | 12



ON DELETE CASCADE ON UPDATE
CASCADE, MANHANVIEN NVARCHAR(50)
NOT NULL,

CONSTRAINT fk_PXuat_NhanVien
FOREIGN KEY(MANHANVIEN)
REFERENCES NhanVien(MANHANVIEN)
ON DELETE CASCADE ON UPDATE
CASCADE )
1.8 Tạo bảng CTPXuat
CREATE TABLE CTPXuat
(
MAPX NVARCHAR(50) NOT NULL,
MAHANG NVARCHAR(50) NOT NULL,
SLXUAT INT NOT NULL,
THUE FLOAT,
DONGIAXUAT FLOAT NOT NULL,
CONSTRAINT pk_CTPXuat
PRIMARY KEY(MAPX,MAHANG),
CONSTRAINT fk_CTPXuat_MatHang
FOREIGN KEY(MAHANG)
REFERENCES MatHang(MAHANG)
ON DELETE CASCADE ON UPDATE
CASCADE, CONSTRAINT
fk_CTPXuat_PXuat
FOREIGN KEY(MAPX)
REFERENCES PXuat(MAPX)
ON DELETE CASCADE ON UPDATE
CASCADE )


2. Nhập dữ liệu cho các bảng
2.1 Nhập dữ liệu cho bảng MatHang

Page | 13


INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('111',' WINNER', 'HONDA','20','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('222',' SH125I', 'HONDA','30','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('333',' SH150I', 'HONDA','15','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP VC')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('444',' EXSITER', 'YAMAHA','50','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('555',' SIRIUS', 'YAMAHA','10','BAO HANH 6 THANG' ,' CHIEC','KIEU DANG
KHA DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('666',' RSX', 'HONDA','100','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')

INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('777',' ALPHAA', 'HONDA','25','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('888',' LEAD', 'HONDA','15','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('999',' LIBERTY', 'LIBERTY','45','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('1000',' VISON', 'HONDA','25','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('1011',' DREAM', 'HONDA','35','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('1012',' FUTRUE', 'HONDA','25','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG
DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
Page | 14


VALUES('1013',' VESPA', 'HONDA','10','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG

DEP')
INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('1014',' LX', 'HONDA','10','BAO HANH 12 THANG' ,' CHIEC','KIEU DANG DEP')
)INSERT INTO MatHang(MAHANG , TENHANG, NHASX, SOLUONG,
THONGTINBAOHANH, DONVITINH, MOTA)
VALUES('1015',' CUP', 'HONDA','50','BAO HANH 24 THANG' ,' CHIEC','KIEU DANG
DEP')

2.2 Nhập dữ liệu cho bảng NhanVien
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('001',' KIMHUY', '1999','NAM','1234567',' HAIDUONG','CHU CUA
HANG','100TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('002',' DAIDUONG', '1999','NAM','1234568',' HAIPHONG','BANHANG','6TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('003',' DUYKHANH', '1999','NAM','5554543',' HANOI','BANHANG','6TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('004',' MINHDUC', '1999','NAM','5598543',' SONTAY','BANHANG','3TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('005',' THANHTUNG', '1999','NAM','1298543',' HANOI','SUAXE','7TRIEU
VND')

INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('006',' VANHAO', '1999','NAM','1478543',' NGHEAN','SUAXE','7TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('007',' VANDAT', '1999','NAM','1499983',' THANHHOA','BAOVE','1TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('008',' LONGVU', '1999','NAM','1228983',' HANOI','BAOVE','2TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('009',' HOANGDUBAI', '1999','NAM','1456983',' SAIGON','BAOVE','2TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
Page | 15


VALUES('010',' TRANHUY', '1999','NAM','1477583',' HAIDUONG','BAOVE','2TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('011',' MANHPHONG', '1999','NAM','1436983',' NAMDINH','BAOVE','3TRIEU
VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('012',' MANHTU', '1999','NAM','1477863',' HANAM ','BAOVE','2TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )

VALUES('013',' DONALTRUMP', '1999','NAM','1128983',' MY','BAOVE','3TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('014',' OBAMA', '1999','NAM','1477783',' MY','BAOVE','4TRIEU VND')
INSERT INTO NhanVien(MANHANVIEN, TENNHANVIEN, NAMSINH, GIOITINH,
DIENTHOAI, DIACHI, CHUCVU, LUONGCOBAN )
VALUES('015',' TAPCANBINH', '1999','NAM','1279683','
TRUNGQUOC','BAOVE','2TRIEU VND')

Bảng dữ liệu NhanVien

2.3 Nhập dữ liệu cho bảng KhachHang
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('901',' HANH', 'HANOI','1111111','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('902',' HUYEN', 'HAIDUONG','2222222','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('903',' LONG', 'LONGAN','3333333','' )
Page | 16


INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('904',' KHANH', 'BINHDUONG','4444444','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('905',' HUY', 'LACLONG','5555555','' )

INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('906',' HOANG', 'BACNINH','6666666','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('907',' LE', 'HANOI','7777777','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('908',' LAM', 'HANOI','8888888','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('909',' DUC', 'LONGBIEN','9999999','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('910',' CHIEN', 'VINHPHUC','1010101','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('911',' MAI', 'LONGAN','0121115','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('912',' LONG', 'VINHPHUC','1212120','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('913',' HAI', 'NGHEAN','1313130','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('914',' PHUOC', 'THANHHOA','1414140','' )
INSERT INTO KhachHang(MAKHACHHANG, TENKHACHHANG, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('915',' BINH', 'SAIGON','1515150','' )


Page | 17


Bảng dữ liệu KhachHang

2.4 Nhập dữ liệu cho bảng NhaCungCap
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('111',' HAIDUONG', 'HANOI','0123456','' )
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('222',' VINGROUP', 'HANOI','0123486','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('333',' ADCBOOK', 'HAIDUONG','0163486','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('444',' BIGC', 'HAIPHONG','0163476','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('555',' HUYHUNG', 'THAIBINH','0169876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('666',' LACLONG', 'NGHEAN','0156876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('777',' ANHHUY', 'BACNINH','0896876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)

VALUES ('888',' KINHMON', 'BACNINH','0896876','')
Page | 18


INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('999',' VINGROUP', 'HAIDUONG','0896776','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1000',' APPLE', 'NEWYORK','0796876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1011',' SAMSUNG', 'SEOUN','0366876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1012',' NOKIA', 'TOKYO','0946876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1013',' GENg', 'KYOTO','0862376','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1014',' SKT', 'KINHMON','0006876','')
INSERT INTO NhaCungCap(MANHACUNGCAP, TENNHACUNGCAP, DIACHI, DIENTHOAI,
EMAIL)
VALUES ('1015',' PHONGVU', 'SAIGON','0801276','')

Bảng dữ liệu NhaCungCap

2.5 Nhập dữ liệu cho bảng PNhap
INSERT INTO PNhap(MAPN, MANHACUNGCAP, MANHANVIEN, NGAYNHAP )

VALUES ('111','111','001','01/17/2018')
Page | 19


INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('222','222','002','03/19/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('333','333','002','05/16/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('444','444','002','04/06/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('555','555','003','04/26/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('666','666','003','02/19/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('777','777','003','03/16/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('888','888','002','03/09/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('999','999','003','04/10/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1000','1000','002','07/12/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1011','1011','002','06/15/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1012','1012','002','09/23/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1013','1013','003','11/22/2018')
INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1014','1014','003','10/04/2018')

INSERT INTO PNhap(MAPN, MANHACUNGCAP,
VALUES ('1015','1015','002','03/25/2018')

MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )
MANHANVIEN, NGAYNHAP )

Bảng dữ liệu PNhap

2.6 Nhập dữ liệu cho bảng CTPNhap
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP, THUE, DONGIANHAP )
Page | 20


VALUES ('111','111','50','10','35000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('222','222','50','05','40000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('333','333','50','05','10000000')

INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('444','444','50','05','45000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('555','555','50','10','12000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('666','666','100','05','1050000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('777','777','50','10','10000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('888','888','50','05','3000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('999','999','50','10','2000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1000','1000','50','05','1500000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1011','1011','50','10','3000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1012','1012','50','10','2500000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1013','1013','50','10','1500000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1014','1014','50','10','2000000')
INSERT INTO CTPNhap(MAPN, MAHANG, SLNHAP,
VALUES ('1015','1015','50','05','500000')

THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )

THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )
THUE, DONGIANHAP )

Bảng dữ liệu CTPNhap

2.7 Nhập dữ liệu cho bảng PXuat
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG, MANHANVIEN )
VALUES ('801','1/18/2019','901','002')
Page | 21


INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('802','2/18/2019','902','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('803','3/18/2019','903','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('804','4/18/2019','904','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('805','5/18/2019','905','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('806','6/18/2019','906','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('807','7/18/2019','907','003')

INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('808','8/18/2019','908','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('809','9/18/2019','909','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('810','10/18/2019','910','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('811','11/18/2019','911','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('812','12/18/2019','912','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('813','5/18/2019','913','002')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('814','6/18/2019','914','003')
INSERT INTO PXuat(MAPX, NGAYXUAT, MAKHACHHANG,
VALUES ('815','7/18/2019','915','003')

MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )
MANHANVIEN )

MANHANVIEN )

Page | 22


Bảng dữ liệu PXuat

2.8 Nhập dữ liệu cho bảng CTPXuat
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('801','111','10','10','40000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('802','222','12','05','60000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('803','333','10','05','105000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('804','444','20','05','45000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('805','555','10','10','12000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('806','666','15','05','18000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('807','777','10','10','15000000')

THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)


Page | 23


INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('808','888','20','05','25000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('809','999','15','05','35000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('810','1000','5','10','20000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('811','1011','10','10','40000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('812','1012','40','10','20000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('813','1013','20','10','25000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('814','1014','15','10','20000000')
INSERT INTO CTPXuat(MAPX, MAHANG, SLXUAT,
VALUES ('815','1015','20','05','10000000')

THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)
THUE, DONGIAXUAT)


Bảng dữ liệu CTPXuat

3. Tạo các View
3.1 Tạo View danh sách phiếu nhập gồm MAPN, NGAYNHAP, TENHANG
DONGIANHAP, THUE, THANHTIEN dùng để thống kê những đơn nhập hàng
đã được nhập hàng đầy đủ
Page | 24


CREATE VIEW V_DANHSACHPNHAP
AS
SELECT TOP 100 PERCENT
PNHAP.MAPN,MONTH(PNHAP.NGAYNHAP) THÁNG,
YEAR(PNHAP.NGAYNHAP) NĂM,
NGAYNHAP=CONVERT(CHAR(10),NGAYNHAP,103),TENHANG,SLNHA
P,DONGIANHAP,THUE,((THUE/100)*DONGIANHAP*SLNHAP)
+DONGIANHAP*SLNHAP AS THANHTIEN
FROM ((MATHANG INNER JOIN CTPNHAP ON
MATHANG.MAHANG=CTPNHAP.MAHANG)INNER JOIN PNHAP ON
PNHAP.MAPN=CTPNHAP.MAPN )
ORDER BY YEAR(PNHAP.NGAYNHAP),MONTH(PNHAP.NGAYNHAP)

View danh sách phiếu nhập

3.2 Tạo View danh sách phiếu xuất gồm MAPX, NGAYXUAT, TENHANG
DONGIAXUAT, THUE, THANHTIEN dùng để thống kê những đơn nhập hàng
đã được nhập hàng đầy đủ

CREATE VIEW V_DANHSACHPXUAT
AS

SELECT TOP 100 PERCENT PXUAT.MAPX,MONTH(NGAYXUAT)
THÁNG, YEAR(NGAYXUAT) NĂM,

Page | 25


×