Trong một hóa đơn nhập hàng (hd mua hàng của đại lý ) thì có thể có nhiều mặt hàng trong đó và ngược lại một mặt hàng thì cũng có thể có mặt trong nhiều hóa đơn nhập khác nhau vì vậy xu[r]
(1)TIỂU LUẬN
MÔN HỌC HỆ
CƠ SỞ DỮ LIỆU
ĐỀ TÀI: QUẢN LÝ MUA BÁN
GVHD: Trần Thị Kim Chi Sinh viên thực hiện:
Phạm Phú Nhân 09203631 Hoàng Anh Tuấn 09170111 Phạm Hải Băng 09219351
(2)A. PHỤ LỤC
I.GIỚI THIỆU ĐỀ TÀI
Mụch đích chọn đề tài
2 Yêu cầu đề tài
II XÂY DỰNG MƠ HÌNH THỰC THỂ KẾT HỢP 1.Kiểu thực thể
2 Các thuộc tính 3.Các mối quan hệ
4 Mơ hình thực thể kết hợp III MƠ HÌNH QUAN HỆ
IV CÁC RÀNG BUỘC
(3)B NỘI DUNG
I GIỚI THIỆU ĐỀ TÀI
1 Mụch đích chọn đề tài
Ngày nay, hoạt động trao đổi bn bán khơng cịn xa lạ với chúng ta, với tốc độ phát triển cách mạnh mẽ ngành nghề kéo theo buôn bán kinh doanh phát triển theo Cũng suất phát từ vấn đề quản lí liệu cần quan tâm phát triển Ví dụ việc quản lý xuất nhập hàng, mua bán hàng hóa va quản lý tồn kho, vấn đề cần thực cách xác, chặt chẽ Nhưng để tổ chức quản lý công việc phương pháp thủ công ghi chép khơng phải cơng việc đơn giản, làm mà cần phải có kỹ nghiệp vụ cần hệ thống, sở liệu quản lý chặt chẽ xác để vịêc mua bán kinh doanh thụân tịên hơn, không dẫn đến thiệt hại cho hoạt động buôn bán Vậy nên phương pháp thủ cơng nhiều cơng sức dễ bị nhầm lẫn.Vì lý nhóm em chọn đề tài để thực hành vịêc kinh doanh, quản lý vịêc mua bán, trau dồi kinh nghiệm cách xây dựng csdl việc ứng dụng công nghệ thông tin
2 yêu cầu đề tài
Công ty ABC cần quản lý việc mua bán mặt hàng cho đại lý với mô tả sau:
(4)Các đại lý bán/mua hàng cần lưu lại thông tin như: Mã số đại lý (không trùng nhau), tên đại lý, địa đại lý, số điện thoại, số Fax, địa Email, tên người đại diện
Dữ liệu bán/mua cần lưu trữ riêng biệt
Mỗi lần bán/mua hàng: công ty cần lưu lại thơng tin từ hố đơn bán/mua bao gồm thơng tin: số hố đơn, ngày bán/mua, họ tên địa người mua/ người bán (đại lý), tổng số tiền mua/bán, số tiền thuế VAT, tổng số tiền sau tính thuế, người lập phiếu (người phụ trách việc mua/bán)
Bên cạnh thông tin trên, công ty cần lưu lại thơng tin chi tiết hố đơn như: số hoá đơn, mã hàng đươc bán/mua, số lượng bán/mua, đơn giá mặt hàng
Yêu cầu đề xây dựng sở dư cho cty qản lý vịêc mua bán với đại lý sỉ, lẻ dễ dàng, thụân tiện cho việc qản lý, giảm chi phí tiền chi cho nhân cơng, tránh thiệt hại khơng đáng có sai sót người quản lý
II XÂY DỰNG MƠ HÌNH THỰC THỂ KẾT HỢP
1.Kiểu thực thể
KHACHHANG
MATHANG
HDNHAP HDXUAT
(5)KHACHHANG
- Makh( khóa ) - Tenkh
- Diachi - Sdt - Fax - Email - Daidien MATHANG
- Mamh (khóa chính) - tenmh
- dvt - mota - nsx - dongia - slton
-HDNHAP
(6)- makh(khóa ngoại)
HDXUAT
- sohdxuat(khóa chính) - makh (khóa ngoại) - ngayxuat
3 Các mối quan hệ
a. Giữa khách hàng (đại lý) hóa đơn nhập (hóa đơn mua hàng cửa hàng)
Sohdnhap Ngaynhap makh
1 23/1/2010 1
2 14/2/2010 1
3 14/2/2010 2
4 23/1/2010 3
Một khách hàng hay đại lý bán cho cửa hàng của chúng ta nhiều lần cần thiết có nhiều hóa đơn , nhiên hóa đơn nhập hàng cửa hàng chúng ta lại đại lý nhất.
b Giữa khách hàng (đại lý) hóa đơn xuất (hd bán hàng cửa hàng)
(7)Sohdxuat Ngaynhap makh
1 21/1/2010 1
2 19/2/2010 1
3 17/2/2010 2
4 26/1/2010 3
Một khách hàng hay đại lý mua nhiều mặt hàng từ cửa hàng có nhiều hóa đơn , tuy nhiên hóa đơn bán hàng cửa hàng lại của một đại lý nhất.
c. Giữa mặt hàng hóa đơn nhập
Trong hóa đơn nhập hàng (hd mua hàng đại lý ) thì có thể có nhiều mặt hàng ngược lại mặt hàng thì cũng có mặt nhiều hóa đơn nhập khác xuất hiện mối quan hệ nhiều nhiều yêu cầu ta phải đưa quan hệ một nhiều cách thêm quan khác chi tiết hóa đơn nhập (CTNHAP) gồm thuộc tính sau:
KHACHANG HDXUAT
(8)CTNHAP
- sohdnhap (khóa chính) - mamh (khóa chính)
- soluong - dg
- vat - tt
d. Giữa mặt hàng hóa đơn xuất
Trong hóa đơn xuất hàng (hd bán hàng đại lý ) có thể có nhiều mặt hàng ngược lại mặt hàng cũng có thể có mặt nhiều hóa đơn xuất khác xuất hiện mối quan hệ nhiều nhiều yêu cầu ta phải đưa quan hệ nhiều bằng cách thêm quan khác chi tiết hóa đơn xuất (CTXUAT) gồm thuộc tính sau:
CTNHAP
- sohdxuat (khóa chính) - mamh (khóa chính) - soluong
(9)- dg - vat - tt
4.Xây dựng mơ hình thực thể kết hợp
III MƠ HÌNH QUAN HỆ
KHACHHANG (makh,tenkh,diachi,daidien) MATHANG (mamh, tenmh, dvt, mota, nsx,
dongia, slton)
HDNHAP (sohdnhap,ngaynhap,makh,tongtien) HDXUAT (sohdxuat, ngayxuat, makh,tongtien) SDT (makh, sdt)
(10) EMAIL (makh, email)
CTNHAP (sohdnhap, mamh, soluong, dg, vat,
tt)
CTXUAT (sohdxuat, mamh, soluong, dg, vat,
tt)
IV CÁC RÀNG BUỘC 1.KHACHHANG
Với r quan hệ khách hàng ta có ràng buộc toàn vẹn sau:
R1: t1, t2 € r
t1.MAKH ≠ t2.MAKH
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.tenkh is not null
R2 Thêm Xóa Sửa
R + - +
2.MATHANG
(11)R1: t1, t2 € r
t1.MAMH ≠ t2.MAMH
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.tenmh is not null
R2 Thêm Xóa Sửa
R + - +
R3: t € r
t.dongia is not null
R3 Thêm Xóa Sửa
R + - +
R4: t € r
t.dvt is not null
R4 Thêm Xóa Sửa
R + - +
R5: t € r
t.nsx is not null
R5 Thêm Xóa Sửa
R + - +
(12)Với r quan hệ hóa đơn nhập ta có các ràng buộc tồn vẹn sau:
R1: t1, t2 € r
t1.sohdnhap ≠ t2.sohdnhap
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.ngaynhap is not null
R2 Thêm Xóa Sửa
R + - +
R3 : t € r
t.tongtien is not null
R3 Thêm Xóa Sửa
R + - +
Với r, s quan hệ HDNHAP, KHACHHANG ta có ràng buộc tồn vẹn sau R r [makh] s[makh]
R3 Thêm Xóa Sửa
R + - +
S - +
(13)Với r quan hệ hóa đơn xuất ta có các ràng buộc tồn vẹn sau:
R1: t1, t2 € r
t1.sohdxuat ≠ t2.sohdxuat
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.ngayxuat is not null
R2 Thêm Xóa Sửa
R + - +
R3 : t € r
t.tongtien is not null
R3 Thêm Xóa Sửa
R + - +
Với r, s quan hệ HDXUAT, KHACHHANG ta có ràng buộc tồn vẹn sau R r [makh] s[makh]
R3 Thêm Xóa Sửa
R + - +
S - +
(14)Với r quan hệ CTNHAP ta có ràng buộc tồn vẹn sau:
R1: t1, t2 € r
t1 sohdnhap, mamh ≠ t2 sohdnhap, mamh
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.soluong is not null
R2 Thêm Xóa Sửa
R + - +
R3: t € r
t.dg is not null
R3 Thêm Xóa Sửa
R + - +
R4: t € r
t.VAT is not null
R4 Thêm Xóa Sửa
R + - +
R5: t € r
(15)R5 Thêm Xóa Sửa
R + - +
6.CTXUAT
Với r quan hệ CTXUAT ta có ràng buộc toàn vẹn sau:
R1: t1, t2 € r
t1 sohdxuat, mamh ≠ t2 sohdxuat, mamh
R1 Thêm Xóa Sửa
R + - +
R2: t € r
t.soluong is not null
R2 Thêm Xóa Sửa
R + - +
R3: t € r
t.dg is not null
R3 Thêm Xóa Sửa
R + - +
R4: t € r
t.VAT is not null
R4 Thêm Xóa Sửa
(16)R5: t € r
t.tt is not null
R5 Thêm Xóa Sửa
R + - +
7.EMAIL
Với r quan hệ EMAIL ta có ràng buộc toàn vẹn sau:
R1: t1, t2 € r
t1 makh ≠ t2 makh
R1 Thêm Xóa Sửa
R + - +
8.FAX
Với r quan hệ FAX ta có ràng buộc toàn vẹn sau:
R1: t1, t2 € r
t1 makh ≠ t2 makh
R1 Thêm Xóa Sửa
R + - +
(17)R1: t1, t2 € r
t1 makh ≠ t2 makh
R1 Thêm Xóa Sửa
R + - +
V ĐẠI SỐ QUAN HỆ
Liệt kê tên kh mua loại hàng có mã F5
Ptenkh(KHACHHANG mamh=mamh smamh=‘F5’(MATHANG))
liệt kê mặt hàng có đơn giá =5tr sdongia=5tr (MATHANG)
Liệt kê công ty nhập & xuất có số lượng
nhau
HDNHAP HDXUAT soluong=soluong
(18) Liệt kê khách hàng mua mặt hàng ‘ca’
smamh=ca CTXUAT HDXUAT
Sohdxuat=Sohdxuat VI TRUY VẤN SQL
tạo sở liệu bán hàng CREATE DATABASE banhang
ONPRIMARY
(
NAME=BH1_data,
filename='D:\tieuluan\BH1.mdf',
SIZE=10,MAXSIZE=50,FILEGROWTH=15% ),
(
NAME=BH2_data,
filename='D:\tieuluan\BH2.ndf',
SIZE=10,MAXSIZE=50,FILEGROWTH=15%),
FILEGROUP BH1group
(
NAME=BH3_data,
FILENAME='D:\tieuluan\BH3.ndf',
SIZE=10,MAXSIZE=50,FILEGROWTH=5%)
LOGON
(
NAME=BH_log,
FILENAME='D:\tieuluan\BH.ldf',
(19)MAXSIZE=25,
FILEGROWTH=5%)
droptable mathang
use banhang
droptable ctxuat
tạo bảng khách hàng createtable KHACHHANG
( MAKH char(5)notnullPRIMARYKEY,
TENKH Varchar(30)NOTNULL,
DIACHI Varchar(40),
DAIDIEN VARCHAR(30) )
tạo bảng mặt hàng createtable MATHANG
( mamh char(5)not nullPRIMARYKEY,
tenmh Varchar(20)unique notnull,
dvt char(10)notnull,
mota VARCHAR(20),
nsx DateTimeNOT NULL,
dongia smallmoneynotnull,
slton int
)
tạo bảng chi tiết nhập hàng hóa createtable ctnhap
( sohdnhap int identitynotnull,
mamh char(5)not null,
soluong intnotnull,
dg smallmoney,
(20)tt as((soluong*dg)+(soluong*dg*vat)/100),
primary key(sohdnhap,mamh) )
tạo bảng chi tiết xuất hàng hóa createtable ctxuat
( sohdxuat intidentity notnull,
mamh char(5)not null,
soluong intnotnull,dg smallmoney,
vat float,
tt as((soluong*dg)+(soluong*dg*vat)/100),
primary key(sohdxuat,mamh) )
tạo bảng hóa đơn nhập createtable hdnhap
( sohdnhap int identitynotnullprimary key,
makh char(5) foreignkey references khachhang(makh),
ngaynhap DateTimeNOT NULLDEFAULT (GetDate()),
tongtien float
)
tạo bảng hóa đơn xuất createtable hdxuat
( sohdxuat intidentity notnullprimarykey,
makh char(5) foreignkey references khachhang(makh),
ngayxuat DateTime NOTNULLDEFAULT (GetDate()),
tongtien float
)
(21)( makh char(5)primary key,
sodt char(12) )
tạo bảng địa email khách hàng createtable email
( makh char(5) primarykey,
email char(40) )
tạo bảng số fax khách hàng createtable fax
( makh char(5) primarykey,
fax char(20) )
câu lệnh truy vấn
Cho biết hai mặt hàng có đơn giá
SELECT mh1.tenmh, mh2.tenmh,mh1.dongia
FROM mathang mh1, mathang mh2
WHERE mh1.dongia = mh2.dongia
Danh sách hoá đơn gồm Mahd, tenkh
SELECT h.makh, tenkh
FROMhdnhap h, khachhang k
WHERE h.makh = k.makh
Cho biết tổng tiền xuất khách hàng
SELECT makh, SUM ((soluong*dg)+(soluong*dg*vat)/100) AS Total FROM ctxuat c,hdxuat h
where c.sohdxuat=h.sohdxuat
GROUP BY makh
(22)SELECT sohdnhap, SUM((soluong*dg)+ (soluong*dg*vat)/100)
AS Total FROM ctnhap
GROUP BY sohdnhap
Cho biết trung bình thu theo hóa đơn
SELECT sohdnhap, AVG ((soluong*dg)+ (soluong*dg*vat)/100)
AS AVGTOTAL FROM ctnhap
GROUP BY sohdnhap
Cho biết sản phẩm có đơn giá cao nhất
SELECT *
FROM mathang
WHERE dongia>= ALL
(SELECT dongia FROM mathang)
Cho biết sản phẩm có đơn vị tính có chữ cai có đơn giá cao nhất
SELECT * FROM mathang
WHERE dvt like '%cai%' and
dongia >= ALL
(SELECT dongia FROM mathang)
liệt kê khách hàng địa chỉ
select distinct a.makh,a.tenkh,a.diachi
from khachhang a,khachhang b
where a.makh!=b.makh and a.diachi=b.diachi;
liệt kê nhữn khách hàng mua nhiều sản phẩm
(23)where a.makh=b.makh and b.Sohdxuat=c.Sohdxuat
group by a.makh, a.tenkh
having count(c.mamh)>=2;
liệt kê mặt hàng tồn kho
select * from mathang
where slton>0
liệt kê mặt hàng tên cam
select * from mathang