1. Trang chủ
  2. » Công Nghệ Thông Tin

BÀI TẬP LỚN HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU

11 30 0

Đ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

BÀI TẬP LỚN MÔN HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Họ tên: Mssv: Lớp GV giảng dạy: Giới thiệu đầu Project 4: Xây dựng CSDL hệ thống quản lý bán hàng Thiết kế CSDL để phục vụ app quản lý nhập xuất hàng hóa bán hàng hóa Thống kê báo cáo Phân tích chức Hệ thống có chức quản lý mặt hàng, quản lý khách hàng, quản lý hoá đơn bán Cửa hàng có nhiều người bán, với hố đơn bán hàng phải có thơng tin người bán cho khách hàng cụ thể Thiết kế bảng Hàng hóa có thuộc tính phù hợp, có lưu giá bán Tạo table HANGHOA có thuộc tính sau: Thiết kế bảng Hóa đơn nhập bảng liên quan để lưu thông tin nhập hàng, cho phép lưu giá nhập Tạo bảng HOADONNHAP bảng liên quan bảng NHACUNGCAP, CHITIETHOADONNHAP Thiết kế bảng Hóa đơn bán bảng liên quan để lưu thông tin bán hàng, cho phép lưu giá bán thực tế để việc sửa giá sản phẩm bán khơng làm ảnh hưởng đến hóa đơn bán Tạo bảng HOADONXUAT có thuộc tính bảng liên quan bảng NHANVIEN,KHACHHANG,CHITIETHOADONXUAT 4.Đặt ràng buộc cứng (CHECK CONSTRAINT) cho phù hợp bảng Liên kết bảng với cách đặt khóa ngoại (FOREIGN KEY) phù hợp 6 Viết SQL tạo hóa đơn mới; sql để thêm/sửa/xóa hàng hóa vào hóa đơn Viết SQL Kiểm tra xem kho có đủ hàng cho hàng hóa không? Create procedure SP_INSERT_HDX Tạo sp_themHDBH @MANV nvarchar(50), @MAKH int =1 AS BEGIN INSERT into HOADONXUAT(MANV, MAKH) values (@MANV, @MAKH) END Khi gõ lệnh xong hồn tất khơng thấy bảng hóa đơn! Viết SQL xóa hóa đơn; cấu hình để xóa tự động mặt hàng hóa đơn VD:xóa dịng có MAHDX ‘3’ delete from CHITIETHOADONXUAT where MAHDX = Tạo function tính tổng tiền hóa đơn nhập create function TongTienHD( @MAHDN int ) RETURNS MONEY AS BEGIN declare @TONGTIEN money; gán giá trị cho biến lệnh select sum SELECT @TONGTIEN=Sum( SOLUONGN*DONGIAN) FROM CHITIETHOADONNHAP WHERE MAHDN=@MAHDN; xác định hóa đơn nhập return @TONGTIEN; END CHẠY: select * from CHITIETHOADONNHAP; select dbo.TongTienHD(1) as TONGTIEN kết :tổng tiền (MAHDN 01) Tạo stored procedure tính tổng tiền doanh thu theo tháng VD: Tính tổng hóa đơn tháng SELECT month(HD.NGAYXUAT) Thang , sum(HD.TONGTIEN) Tong FROM HOADONXUAT HD WHERE month(HD.NGAYXUAT)=6 GROUP BY month(HD.NGAYXUAT) 10 Tạo stored procedure tính tổng tiền nhập hàng theo tháng SELECT month(HD.NGAYNHAP) Thang, sum(HD.TONGTIEN) Tổng FROM HOADONNHAP HD WHERE month(HD.NGAYNHAP)=3 GROUP BY month(HD.NGAYNHAP Tính tổng tiền cho hóa đơn Nhập tháng 11 Tạo trigger để cập nhật số lượng hàng kho loại update CHITIETHOADONXUAT set SOLUONGX = where MAHH = go select * from KHO go select * from CHITIETHOADONXUAT SOLUONG = SOLUONG - inserted.SOLUONGX + deleted.SOLUONGX 12 Viết SQL thống kê mặt hàng bán chạy Select Top TENHH, SUM(SOLUONGX) as Tongsoluong from HANGHOA, CHITIETHOADONXUAT where HANGHOA.MAHH = CHITIETHOADONXUAT.MAHH group by TENHH order by Tongsoluong desc 13 Viết SQL thống kê mặt hàng bán chạy mà cịn kho(để nhập bán tiếp) Khi chạy câu lệnh: Select Top (1) with ties * from HANGHOA, KHO where HANGHOA.MAHH = KHO.MAHH order by SOLUONG asc ; Sẽ thống kê thông tin mặt hàng cịn kho: 14 Viết SQL thống kê mặt hàng bán chậm, ( nhằm tìm nguyên nhân để xử lý, ví dụ vị trí bán hàng khơng tốt -> ko bán được) Câu lệnh SQL tìm mặt hàng bán Select Top (1) with ties *from CHITIETHOADONXUAT,HANGHOA where HANGHOA.MAHH = CHITIETHOADONXUAT.MAHH order by SOLUONGX asc ; 15 Viết SQL thống kê hàng hóa có giá bán cịn thấp giá nhập Câu lệnh sql: select * from CHITIETHOADONNHAP minus select * from HANGHOA SELECT HANGHOA.MAHH,TENHH,DONGIAN,DONGIA FROM HANGHOA,CHITIETHOADONNHAP,CHITIETHOADONXUAT Where HANGHOA.MAHH=CHITIETHOADONNHAP.MAHH AND HANGHOA.MAHH=CHITIETHOADONXUAT.MAHH AND DONGIA

Ngày đăng: 02/09/2021, 10:17

TỪ KHÓA LIÊN QUAN

w