1. Trang chủ
  2. » Luận Văn - Báo Cáo

đồ án nhóm cở sở dữ liệu đề tài quản lí bán hàng

12 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

QUẢN LÝ BÁN HÀNGPHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU:I.Mô tả bài toán :Mỗi khách hàng có một mã khách hàng MAKH duy nhất, mỗi MAKH xác định được các thông tin về k

Trang 1

TRƯỜNG ĐẠI HỌC DUY TÂN

Trang 2

MỤC LỤC

PHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH

PHẦN II: BIỂU THỨC ĐẠI SỐ QUAN HỆ4PHẦN III: CÂU LỆNH CHỈNH SỬA CẤU TRÚC BẢNG5

Trang 3

QUẢN LÝ BÁN HÀNG

PHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU:

I.Mô tả bài toán :

Mỗi khách hàng có một mã khách hàng (MAKH) duy nhất, mỗi MAKH xác định được các thông tin về khách hàng như : họ tên khách hàng (HOTEN), địa chỉ (ĐIACHI), số điện thoại

(ĐIENTHOAI) Các mặt hàng được phân loại theo từng nhóm hàng, mỗi nhóm hàng có một mã nhóm (MANHOM) duy nhất, mỗi mã nhóm hàng xác định tên nhóm hàng (TENNHOM), tất nhiên một nhóm hàng có thể có nhiều mặt hàng Mỗi mặt hàng được đánh một mã số (MAHANG) duy nhất, mỗi mã số này xác định các thông tin về mặt hàng đó như : tên hàng (TENHANG), đơn giá bán (ĐONGIA), đơn vị tính (ĐVT) Mỗi hóa đơn bán hàng có một số hóa đơn (SOHĐ) duy nhất, mỗi hóa đơn xác định được khách hàng và ngày lập hóa đơn (NGAYLAPHĐ), ngày giao hàng (NGAYGIAO) Với mỗi mặt hàng trong một hóa đơn cho biết số lượng bán (SLBAN) của mặt hàng đó.

Trang 4

II.Vẽ mô hình thực thể :

III.Vẽ mô hình quan hệ:

Trang 5

IV.Cho dữ liệu bảng:

Trang 6

PHẦN II: BIỂU THỨC ĐẠI SỐ QUAN HỆ

1 Hiển thị tất cả các nhà cung cấp có địa chỉ tại Đà Nẵng gồm Mã nhà CC, tên nhà cung cấp và địachỉ ( π_{MãNhàCC, TênNhàCungCấp, ĐịaChỉ}(σ_{ĐịaChỉ=‘Đà Nẵng’}(NhàCungCấp)) )

2 Hiển thị tất cả các sản phẩm do nhà cung cấp có tên là Cty Hoa Sen Gồm mã sản phẩn tên sản phẩm và số lượng

( π _{MãSảnPhẩm, TênSảnPhẩm, SốLượng}(σ_{TênNhàCungCấp=‘Cty Hoa Sen’}(SảnPhẩm ⨝ NhàCungCấp)) )

3.Hiển thị các sản phẩm do nhà cung cấp có số điện thoại là 0905222507:

( π _{TênNhàCungCấp, MãSảnPhẩm, TênSảnPhẩm, SốLượng}(σ_{ĐiệnThoại=‘0905222507’} (SảnPhẩm NhàCungCấp)) )⨝

4.Tính tổng số lượng tồn kho theo từng nhà cung cấp:

( G_{MãNhàCungCấp, TênNhàCungCấp; Tổng(SốLượng)}(SảnPhẩm NhàCungCấp) )⨝

5.Sản phẩm có số lượng tồn kho nhiều nhất:

( π _{MãNhàCungCấp, TênNhàCungCấp, SốLượng}(σ_{SốLượng= \max(SốLượng)}(SảnPhẩm ⨝ NhàCungCấp)) )

6.Tính tổng số tiền của hóa đơn có mã là HD01:

( G_{MãHóaĐơn; Tổng(SLBán \times ĐơnGiáBán)}(σ_{MãHóaĐơn=‘HD01’}(HóaĐơnBán ⨝ ChiTiếtHóaĐơn)) )

7.Thống kê tổng số tiền theo từng hóa đơn:

( G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(HóaĐơnBán ChiTiếtHóaĐơn) )⨝

8.Hóa đơn mua nhiều tiền nhất trong ngày hiện tại:

( π_{MãHóaĐơn, NgàyBán, TổngTiền}(σ_{NgàyBán=‘NgàyHiệnTại’ \land TổngTiền= \ max(TổngTiền)}(G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(HóaĐơnBán ⨝

12.Thống kê số tiền đã bán được trên từng sản phẩm:

( G_{MãSảnPhẩm, TênSảnPhẩm; Tổng(SLBán \times ĐơnGiáBán)}(SảnPhẩm ChiTiếtHóaĐơn) )⨝

13.Liệt kê các sản phẩm mà khách hàng có số điện thoại 0905222507 đã mua:

( π_{MãSảnPhẩm, TênSảnPhẩm, SLBán, ĐơnGiáBán, SLBán \times ĐơnGiáBán}

Trang 7

(σ_{ĐiệnThoại=‘0905222507’}(KháchHàng HóaĐơnBán ChiTiếtHóaĐơn)) )⨝ ⨝

14.Thống kê các đơn hàng của khách hàng ở Quảng Nam:

( G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(σ_{ĐịaChỉ=‘Quảng Nam’}(KháchHàng

19.Hiển thị hóa đơn đã bán trong vòng một tuần từ ngày hiện tại:

( π_{MãHóaĐơn, NgàyHóaĐơn, TổngTiền}(σ_{NgàyHóaĐơn \geq (NgàyHiệnTại - 7)}(HóaĐơn)) )

20.Thống kê tổng số tiền mua theo giới tính:

( G_{GiớiTính; Tổng(TổngTiền)}(HóaĐơn KháchHàng) )⨝

21.Cập nhật đơn giá tăng 10% cho mặt hàng MH01:

( π_{MãHàng, TênHàng, ĐơnGiá \times 1.1}(σ_{MãHàng=‘MH01’}(MặtHàng)) )

Trang 8

PHẦN III: CÂU LỆNH CHỈNH SỬA CẤU TRÚC BẢNG

4.1 Cài đặt mô hình quan hệ ở câu 2 vào hệ quản trị CSDL SQL Server: CopyCREATE TABLE NhomHang (

MaNhom NVARCHAR(10) PRIMARY KEY, TenNhom NVARCHAR(50) NOT NULL, MoTa NVARCHAR(200)

CREATE TABLE MatHang (

MaMatHang NVARCHAR(10) PRIMARY KEY, TenMatHang NVARCHAR(50) NOT NULL, MaNhom NVARCHAR(10) NOT NULL,

Trang 9

MaDonHang NVARCHAR(10) PRIMARY KEY, TenDonHang NVARCHAR(50) NOT NULL, MaKhachHang NVARCHAR(10) NOT NULL, TongTien DECIMAL(18,2),

FOREIGN KEY (MaKhachHang) REFERENCES KhachHang(MaKhachHang) );

CREATE TABLE KhachHang (

MaKhachHang NVARCHAR(10) PRIMARY KEY, TenKhachHang NVARCHAR(50) NOT NULL, SoTienMuaHang DECIMAL(18,2),

DiaChi NVARCHAR(200) );

4.2 Nhập dữ liệu cho các bảng, mỗi bảng ít nhất 10 dòng: Copy Nhập dữ liệu cho bảng NhomHang

INSERT INTO NhomHang (MaNhom, TenNhom, MoTa) VALUES

('01', 'Nhóm 01', 'Mô tả nhóm hàng 01'), ('02', 'Nhóm 02', 'Mô tả nhóm hàng 02'), ('03', 'Nhóm 03', 'Mô tả nhóm hàng 03');

Nhập dữ liệu cho bảng MatHang

INSERT INTO MatHang (MaMatHang, TenMatHang, MaNhom, SoLuongTon, DonGia) VALUES

('MH001', 'Mặt hàng 01', '01', 20, 50.00), ('MH002', 'Mặt hàng 02', '01', 15, 100.00),

Trang 10

('MH003', 'Mặt hàng 03', '02', 10, 200.00), ('MH004', 'Mặt hàng 04', '02', 5, 150.00), ('MH005', 'Mặt hàng 05', '03', 30, 80.00);

Nhập dữ liệu cho bảng DonHang

INSERT INTO DonHang (MaDonHang, TenDonHang, MaKhachHang, TongTien) Nhập dữ liệu cho bảng KhachHang

INSERT INTO KhachHang (MaKhachHang, TenKhachHang, SoTienMuaHang, DiaChi) VALUES

('KH001', 'Nguyễn Dũng', 800.00, 'Đà Nẵng'), ('KH002', 'Trần Thanh', 150.00, 'Quảng Nam'), ('KH003', 'Lê Hương', 120.00, 'Quảng Nam'), ('KH004', 'Nguyễn Tâm', 250.00, 'Đà Nẵng'), ('KH005', 'Trần Quốc', 350.00, 'Quảng Nam');

4.3 Hiển thị các nhóm hàng có những mặt hàng chưa bán lần nào: CopySELECT nh.MaNhom, nh.TenNhom

FROM NhomHang nh

LEFT JOIN MatHang mh ON nh.MaNhom = mh.MaNhom WHERE mh.MaMatHang IS NULL;

4.4 Hiển thị hai đơn hàng có số tiền nhiều nhất:

Trang 11

CopySELECT TOP 2 MaDonHang, TenDonHang, TongTien FROM DonHang

ORDER BY TongTien DESC;

4.5 Hiển thị tất cả các khách hàng có số tiền mua hàng bằng với khách hàng có tên là Nguyễn Dũng: CopySELECT kh.MaKhachHang, kh.TenKhachHang, kh.SoTienMuaHang

FROM KhachHang kh

WHERE kh.SoTienMuaHang = (SELECT SoTienMuaHang FROM KhachHang WHERE TenKhachHang = 'Nguyễn Dũng');

4.6 Hiển thị thông tin gồm mã hàng, tên hàng và ghi chú Trong đó cột ghi chú dựa vào số tiền được của mặt hàng Nếu mặt hàng có tiền bán được lớn hơn hoặc bằng 100 thì ghi là thấp, từ 101 đến 1000 là trung bình còn lại là cao:

CopySELECT mh.MaMatHang, mh.TenMatHang, CASE

WHEN mh.DonGia >= 100 THEN 'Thấp'

WHEN mh.DonGia BETWEEN 101 AND 1000 THEN 'Trung bình'

WHERE kh.DiaChi IN ('Đà Nẵng', 'Quảng Nam') AND kh.SoTienMuaHang > 1000000; 4.8 Xóa những khách hàng chưa mua hàng lần nào:

CopyDELETE FROM KhachHang

WHERE SoTienMuaHang IS NULL OR SoTienMuaHang = 0; 4.9 Cập nhật đơn giá cho những mặt hàng của nhóm 01 lên 10%: CopyUPDATE MatHang

SET DonGia = DonGia * 1.1 WHERE MaNhom = '01';

4.10 Biểu diễn một cách chặt chẽ các ràng buộc toàn vẹn đã được mô tả trong lược đồ cơ sở dữ liệu trên: Ràng buộc toàn vẹn về khóa chính:

NhomHang (MaNhom): PRIMARY KEY

Trang 12

MatHang (MaMatHang): PRIMARY KEY DonHang (MaDonHang): PRIMARY KEY KhachHang (MaKhachHang): PRIMARY KEY Ràng buộc toàn vẹn về khóa ngoại:

MatHang (MaNhom): FOREIGN KEY REFERENCES NhomHang(MaNhom)

DonHang (MaKhachHang): FOREIGN KEY REFERENCES KhachHang(MaKhachHang)

Ngày đăng: 24/04/2024, 16:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w