Bài tập hệ quản trị cơ sở dữ liệu quản lý bán hàng

7 3.6K 127
Bài tập hệ quản trị cơ sở dữ liệu quản lý bán hàng

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

Thông tin tài liệu

các dạng bài tập hệ quản trị cơ sở dữ liệu sql trong quản lý bán hàng, từ mức độ dễ đến kho. Database đã được cho sẵn giúp cho các bạn hình dung được nội dung dễ dàng hơn. Đây là tài liệu hữu ích cho những ai mới bắt đầu làm quen với hệ quản trị cơ sở dữ liệu

I. Trong database QLVATTU, tạo table ràng buộc sau: Table KHACHHANG Name type size MAKH Nvarchar TENKH Nvarchar 30 DIACHI Nvarchar 50 DT Nvarchar 15 Email Nvarchar 30 Ràng buộc: TENKH not null Table VATTU Name type size MAVT Nvarchar TENVT Nvarchar 30 DVT Nvarchar 20 GIAMUA Numeric SLTON Numeric Ràng buộc: TENVT not null; GIAMUA phải lớn 0; Giá trị field SLTON >=0. Table HOADON Name type size MAHD Nvarchar 10 NGAY Date/Time MAKH Nvarchar TONGTG Numeric Ràng buộc: giá trị cột NGAY phải trước ngày hành, MAKH tham chiếu từ bảng KHACHHANG. Table CHITIETHOADON Name type size MAHD Nvarchar 10 MAVT Nvarchar SL Numeric GIABAN Numeric KHUYENMAI Numeric Ràng buộc: field SL GIABAN phải lớn 0, MAHD tham chiếu từ bảng HOADON, MAVT tham chiếu từ bảng VATTU. II. Nhập liệu vào table database QLVATTU sau: Table VATTU: MAVT TENVT DVT VT01 XI MANG BAO VT02 CAT KHOI VT03 GACH ONG VIEN VT04 GACH THE VIEN VT05 DA LON KHOI VT06 DA NHO KHOI VT07 LAM GIO CAI Table KHACHHANG: MAKH TENKH DIACHI KH01 NGUYEN THI BE TAN BINH KH02 LE HOANG NAM BINH CHANH KH03 TRAN THI CHIEU TAN BINH KH04 MAI THI QUE ANH BINH CHANH KH05 LE VAN SANG QUAN 10 KH06 TRAN HOANG KHAI TAN BINH Table HOADON: MAHD NGAY HD001 12/05/2000 HD002 25/05/2000 HD003 25/05/2000 HD004 25/05/2000 HD005 26/05/2000 HD006 02/06/2000 HD007 22/06/2000 HD008 25/06/2000 HD009 15/08/2000 HD010 30/09/2000 HD011 27/12/2000 Table CHITIETHOADON MAHD MAVT SL HD001 VT01 HD001 VT05 10 HD002 VT03 10000 HD003 VT02 20 HD004 VT03 50000 HD004 VT04 20000 HD005 VT05 10 GIAMUA 50000 45000 120 110 25000 33000 15000 SLTON 5000 50000 800000 800000 100000 100000 50000 DT 38457895 39878987 38457895 EMAIL bnt@yahoo.com namlehoang@abc.com sanglv@hcm.vnn.vn 38457897 MAKH KH01 KH02 KH01 KH04 KH04 KH03 KH04 KH03 KH04 KH01 KH06 GIABAN 52000 30000 150 55000 150 120 30000 HD005 HD005 HD006 HD007 HD008 HD008 HD009 HD010 HD011 HD011 HD012 HD012 HD012 VT06 VT07 VT04 VT04 VT01 VT02 VT02 VT01 VT01 VT02 VT01 VT02 VT03 15 20 10000 20000 100 20 25 25 20 20 20 10 10000 35000 17000 120 125 55000 47000 48000 57000 55000 45000 55000 48000 150 Bài 1: Tạo View sau database QLVATTU 1. Hiển thị danh sách tất khách hàng gồm mã khách hàng, tên khách hàng, địa chỉ, điện thoại địa email. 2. Hiển thị danh sách khách hàng có địa “TAN BINH” gồm mã khách hàng,tên khách hàng, địa chỉ, điện thoại địa E-mail 3. Hiển thị danh sách khách hàng gồm thông tin mã khách hàng, tên khách hàng, địa địa Email khách hàng chưa có số điện thoại 4. Hiển thị danh sách khách hàng chưa có số điện thoại chưa có địa E-mail gồm mã khách hàng, tên khách hàng, địa 5. Hiển thị danh sách khách hàng có số điện thoại địa E-mail gồm mã khách hàng, tên khách hàng, địa chỉ, điện thoại địa E-mail 6. Hiển thị danh sách tất vật tư gồm mã vật tư, tên vật tư, đơn vị tính giá mua 7. Hiển thị danh sách tất vật tư có đơn vị tính “CAI” gồm mã vật tư, tên vật tư, đơn vị tính giá mua 8. Hiển thị danh sách tất vật tư gồm mã vật tư, tên vật tư, đơn vị tính giá mua mà có giá mua 25000 9. Hiển thị danh sách tất vật tư “GACH” (bao gồm loại gạch) gồm mã vật tư, tên vật tư, đơn vị tính giá mua 10. Hiển thị danh sách tất vật tư gồm mã vật tư, tên vật tư, đơn vị tính giá mua mà có giá mua nằm khoảng từ 20000 đến 40000 11. Tạo query để lấy thông tin gồm Mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa khách hàng số điện thoại 12. Tạo query để lấy thông tin gồm Mã hóa đơn, tên khách hàng, địa khách hàng số điện thoại ngày 25/5/2000 13. Tạo query để lấy thông tin gồm Mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa khách hàng số điện thoại hóa đơn tháng 6/2012 14. Lấy danh sách khách hàng (tên khách hàng, địa chỉ, số điện thoại) mua hàng tháng 6/2000 15. Lấy danh sách khách hàng không mua hàng tháng 6/2000 gồm thông tin khách hàng, địa chỉ, số điện thoại 16. Tạo query để lấy thông tin gồm thông tin mã hóa đơn, mã vật tư, tên vật tư, đơn vị tính, giá mua, giá bán, số lượng, trị giá mua(giá mua *số lượng), trị giá bán(giá bán*số lượng) 17. Tạo query để lấy chi tiết hóa đơn gồm thông tin mã hóa đơn, mã vật tư, tên vật tư, đơn vị tính, giá bán,giá mua, số lượng, trị giá mua(giá mua *số lượng), trị giá bán(giá bán*số lượng) mà có giá bán lớn giá mua 18. Tạo query để lấy thông tin gồm thông tin mã hóa đơn, mã vật tư, tên vật tư, đơn vị tính, giá bán, giá mua, số lượng, trị giá mua(giá mua *số lượng), trị giá bán(giá bán*số lượng) cột khuyến với khuyến 10% cho mặt hàng bán hóa đơn lớn 100 19. Tìm mặt hàng chưa bán 20. Tạo bảng tổng hợp gồm thông tin: mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua,giá bán, số lượng, trị giá mua, trị giá bán 21. Tạo bảng tổng hợp tháng 5/2000 gồm thông tin: mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua,giá bán, số lượng, trị giá mua, trị giá bán 22. Tạo bảng tổng hợp tháng 6/2000 gồm thông tin: mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua,giá bán, số lượng, trị giá mua, trị giá bán 23. Tạo bảng tổng hợp quý năm 2000 gồm thông tin: mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua,giá bán, số lượng, trị giá mua, trị giá bán 24. Lấy danh sách hóa đơn gồm thông tin: số hóa đơn, ngày, tên khách hàng, địa khách hàng, tổng giá trị hóa đơn 25. Lấy hóa đơn có tổng giá trị lớn gồm thông tin: số hóa đơn, ngày, tên khách hàng, địa khách hàng, tổng giá trị hóa đơn 26. Lấy hóa đơn có tổng giá trị lớn tháng 5/2000 gồm thông tin: số hóa đơn, ngày, tên khách hàng, địa khách hàng, tổng giá trị hóa đơn 27. Lấy hóa đơn có tổng giá trị nhỏ gồm thông tin: số hóa đơn, ngày, tên khách hàng, địa khách hàng, tổng giá trị hóa đơn 28. Đếm xem khách hàng có hóa đơn 29. Lấy thông tin khách hàng có số lượng hóa đơn mua hàng nhiều 30. Lấy thông tin khách hàng có số lượng hàng mua hàng nhiều 31. Lấy thông tin mặt hàng mà bán nhiều hóa đơn 32. Lấy thông tin mặt hàng mà bán nhiều 33. Lấy danh sách tất khách hàng gồm: Mã khách hàng, tên khách hàng, địa chỉ, số lượng hóa đơn mua (nếu khách hàng chưa mua hàng cột số lượng hóa đơn để trống) Bài 2: Tạo Function sau cho database QLVATTU 1. Viết hàm tính doanh thu năm…., với năm tham số truyền vào 2. Viết hàm tính doanh thu tháng…., với tháng tham số truyền vào 3. Viết hàm tính doanh thu khách hàng với mã khách hàng tham số truyền vào 4. Viết hàm tính tổng số lượng bán cho mặt hàng theo tháng với mã hàng tháng nhập vào, tháng không nhập vào tức tính tất tháng. 5. Viết hàm tính lãi ((trị giá bán – trị giá mua)*số lượng bán được) cho mặt hàng, với mã mặt hàng tham số truyền vào. Nếu mã mặt hàng không truyền vào tính cho tất mặt hàng. Bài 3: Tạo procedure sau cho database QLVATTU 1. Lấy danh sách khách hàng gồm thông tin: MAHD, NGAY, TENKH, TONGTG. 2. Lấy danh sách khách hàng mua hàng ngày [ngay]…, với [ngay] tham số truyền vào. 3. Lấy danh sách khách hàng có tổng trị giá đơn hàng lớn nhất. 4. Lấy danh sách 10 mặt hàng có số lượng bán lớn nhất. 5. Lấy danh sách 10 mặt hàng bán có lãi nhất. 6. Tính tổng doanh thu năm với năm tham số truyền vào trả giá trị tổng doanh thu tính được. 7. Xóa chi tiết hóa đơn hóa đơn có mã tham số truyền vào. 8. Tính giá trị cho cột khuyến sau: khuyến 5% SL>100, 10% SL>500. 9. Tính lại số lượng tồn cho tất mặt hàng (SLTON = SLTON – Tổng số lượng bán được). 10. Tính giá trị cho hóa đơn. 11. Tạo table KH_VIP có cấu trúc giống với cấu trúc table KHACHHANG. Lưu khách hàng có tổng trị giá tất đơn hàng >=10.000.000 vào table KH_VIP. Bài 4: Tạo Trigger để tạo ràng buộc sau cho database QLVATTU 1. Thực việc kiểm tra ràng buộc khóa ngoại. 2. Không cho phép cascade delete ràng buộc khóa ngoại, ví dụ ko cho phép xóa CTHOADON có SOHD table HOADON. 3. Không cho phép người dùng nhập vào hai vật tư có tên. 4. Khi người đặt hàng Khuyến 5% SL>100, 10% SL>500. 5. Chỉ phép mua mặt hàng có số lượng tồn lớn số lượng cần mua tính lại số lượng tồn có đơn hàng. 6. Không cho phép người dùng xóa lúc nhiều vật tư.

Ngày đăng: 17/09/2015, 22:31

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan