TABLESPACETBSP1 STORAGE INITIAL50K; create tableQuanLy MaQL varchar215 primary key, MaCN varchar210 not null, HoTen nvarchar230 not null, Tuoi INT not null, DiaChi nvarchar250 not null
Sơ đồ quan hệ
Nhóm d ự án đã hoàn thành xong thiết kế chức năng và thiết kế CSDL cho h ệ thống quản lý bán hàng trong ngày 1/6/2021 Dưới đây là phần thiết kế chi tiết:
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài Ràng bu c ộ
• B NG CHI TI T PHI U NH P Ả Ế Ế Ậ
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
• B NG CHI TIẢ ẾT HÓA ĐƠN
Tên trường Kiểu Độ dài/ c ỡ Ràng bu c ộ
Tên trường Kiểu Độ dài/ cỡ Ràng bu cộ
MaCN varchar2 10 Khóa ngo iạ
Th c hi n ự ệ
T o CSDL b ng Database Configuration Assistant ạ ằ
- Các bướ ạc t o CSDL th c hiự ện như đã được hướng dẫn trên lớp, dưới đây là hình nh k t qu nhóm t o CSDL: ả ế ả ạ
T o Tablespace và t o b ạ ạ ảng
Nhóm đã tạo thêm 2 tablespace nhằm phục vụ nhiệm vụ phân bổ không gian cấp phát cho từng user Việc tạo thêm tablespace sẽ hỗ trợ công tác sao lưu và phục hồi dữ liệu từng phần, qua đó giúp nâng cao hiệu suất hệ thống Trong cơ sở dữ liệu này, nhóm đã tạo 2 tablespace, bao gồm: "tbsp1" và "tbsp2" Tablespace "tbsp1" dùng để lưu trữ các file dữ liệu ít biến động (Chi nhánh, Quận, Nhân viên, Ca Làm, Kế hoạch, Nhà cung cấp), còn tablespace "tbsp2" dùng để lưu các file dữ liệu thường xuyên phải cập nhật (Sản phẩm, Chi tiết kho, Hóa đơn, Chi tiết HD, Phiếu nhập, Chi tiết PN, Lịch làm).
Việc phân chia này nh m nâng cao hi u su t trong viằ ệ ấ ệc sao lưu và phục hồi data file theo t ng phừ ần
• Bảng qu n lý ả create table ChiNhanh
STORAGE (INITIAL 50K); create table QuanLy
SDT nvarchar2(11 ) not null , constraint QL_MaCN_FK foreign key (macn) references chinhanh
DATAFILE 'D: APP HUNGN ORADATA BTL \ \ \ \ \tbsp1' SIZE 500M
LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE
DATAFILE 'D: APP HUNGN ORADATA BTL tbsp2 \ \ \ \ \ ' SIZE 500M
LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE
• Bảng lịch làm create table NhanVien
MaCN varchar2(10 ) not null, constraint NV_MaCN_FK foreign key (macn) references chinhanh
STORAGE (INITIAL 50K); create table CaLam
STORAGE (INITIAL 50K); create table LichLam
MaNV varchar2(15 ) not null, constraint LL_Ca_FK foreign key (ca) references calam, constraint LL_MaNv_FK foreign key (manv) references nhanvien
• Bảng chi tiết kho create table NhaCC
MaNCC varchar2(15 ) not null primary key,
STORAGE (INITIAL 50K); create table Kh
MaC varchar 1 not null , constraint K_MaCN_F foreign key MaC ) references chinhan
STORAGE (INITIAL 50 ); create table CTK
HSD date not null, constraint CTK_MaKho_FK foreign key ( MaKho ) references kho, constraint CTK_MaSP_FK foreign key ( MaSP ) references
• Bảng phi u nhế ập create table SanPham
DonGiaBan float not null, constraint SP_MaNCC_FK foreign key (MaNCC) references nhacc
STORAGE (INITIAL 50K); create table Hoadon
ThoiGian timestamp not null, constraint Hd_MaNV_FK foreign key (manv) references nhanvien
STORAGE (INITIAL 100K); create table PhieuNhap
• Bảng Chi tiết hoá đơn
• Bảng Chi tiết phiếu nhập create table CTHD
ThanhTien float not null, constraint Hd_MaSP_FK foreign key (masp) references sanpham, constraint Hd_MaHD_FK foreign key (mahd) references hoadon
STORAGE (INITIAL 100K); create table ChiTietPhieuNhap
ThanhTien float not null , constraint CTPN_MaNCC_FK foreign key (MaNCC) references
Nhacc, constraint CTPN_MaPN_FK foreign key(MaPhieu) references
PhieuNhap, constraint CTPN_MaSP_FK foreign key (MaSP) reference s
Nh p d ậ ữ liệu
Nhóm th c hiự ện đã tạo procedure để nhập dữ liệu nhanh hơn Sau đây là 1 ví dụ v t o procedure và th c hiề ạ ự ện nh p dậ ữ liệu
Procedure nh p d ậ ữliệu B ng Chi nhánh ả
K t qu sau khi nhế ả ập d liệu ữ
• Bảng chi nhánh create or replace procedure INSERTCN
) is begin insert into ChiNhanh values(Ma,Ten,DC); end; exec INSERTCN('HN1','Circle K Tay Son','33/167 Tay Son,
Dong Da, Ha Noi') exec INSERTCN('HN2','Circle K Nguyen Chi Thanh','8/91
Nguyen Chi Thanh, Lang Ha, Dong Da, Ha Noi') exec INSERTCN('HN3','Circle K Kham Thien','380 Kham Thien,
Dong Da, Ha Noi') exec INSERTCN('HN4','Circle K Ton That Tung','8A Ton That
Tung, Kim Lien,Dong Da, Ha Noi')
• Bảng ca làm • Bảng lịch làm
• Bảng nhà cung cấp • Bảng kho
• Bảng chi tiết hoá đơn
• Bảng chi tiết phi u nh p ế ậ
Truy v n ấ
1 S n ph m còn h n s dả ẩ ạ ử ụng đến hết năm 2021 select * from ctk where extract (year from hsd )= 10 và đơn giá bán >= 130000 select distinct a.tensp,a.donvi, sum(b.soluong) as tongban from sanpham a inner join cthd b using (masp) group by a.tensp,a.donvi order by tongban asc select * from cthd where soluong >= '10' and dongiaban >= '130000';
9 Liệt kê thông tin hóa đơn của các chi nhánh trong ca 1 trong ngày
Select hoadon.mahd,hoadon.manv,cthd.masp,cthd.soluong,cthd.donvi, cthd.thanhtien ,hoadon.tongcong from cthd inner join hoadon on cthd.mahd=hoadon.mahd inner join nhanvien on hoadon.manv=nhanvien.manv inner join lichlam on nhanvien.manv=lichlam.manv
' where ca =' Ca1 ' and hoadon.thoigian