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