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

Code sql bài toán quản lí cửa hàng thời trang sql server

28 716 4

Đ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

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 92,07 KB

Nội dung

Create database cuahangthoitrang 2 Tạo Bảng 2 create table khachhang 2 create table nhanvien 2 create table sanpham 3 create table hangsx 3 create table hoadonnhap 3 create table hoadonxuat 4 create table nv_sdt 4 create table kh_sdt 4 create table hoadonxuat_chitiet 4 create table hoadonnhap_chitiet 5 create table kho_chitiet 5 Tạo khóa chính 5 Tạo khóa phụ 6 Tạo các CK 8 Tạo các Constraint 8 Tạo các Index 9 Nhập bản ghi 9 Xoa truong thu 2 o moi bang 14 Thêm trường vừa xóa 15 Cập nhập nhân viên 16 update nhanvien 16 Tăng giá sản phảm có mã 03 lên 300000 16 Chuyển số nhân viên có công việc a thành c 17 Lấy sđt của nhân viên là nữ 1

Mục Lục Code Sql toán quản cửa hàng thời trang Sql server Create database cuahangthoitrang Tạo Bảng create table khachhang create table nhanvien create table sanpham .3 create table hangsx create table hoadonnhap create table hoadonxuat create table nv_sdt create table kh_sdt create table hoadonxuat_chitiet create table hoadonnhap_chitiet create table kho_chitiet Tạo khóa Tạo khóa phụ .6 Tạo CK Tạo Constraint Tạo Index .9 Nhập ghi Xoa truong thu o moi bang 14 Thêm trường vừa xóa 15 Cập nhập nhân viên 16 update nhanvien 16 -Tăng giá sản phảm có mã 03 lên 300000 16 -Chuyển số nhân viên có công việc a thành c 17 -Lấy sđt nhân viên nữ 17 Hiện khách hàng mua nhiều hàng nhất,tên loại hàng,tổng tiền .17 Hiện hãng sản phẩm bán nhiều 17 Đếm số nhân viên theo giới tính 18 Đếm số khách hàng theo giời tính 18 Đếm số khách hàng 18 Tạo View 19 Tạo procedure thêm vào bảng 20 -Gọi Stored Procedure vừa tạo 21 -Tạo Stored Procedure xóa liệu 22 Tạo Procedure tìm khách hàng lớn tuổi .22 Tìm khách hàng theo mã khách hàng 22 Tìm nhân viên theo mã nhân viên 23 Tìm khách hàng theo giới tính 23 Tìm nhân viên theo giới tính 23 Nhập mã nhân viên tuổi, hệ số lương .24 Tạo view tuổi nhỏ 24 Tạo View màu sắc mua nhiều 24 Dem so luong sp hãng sx 25 HoaDonXuatMotNhanVien .26 Tao proc tinh tong SP mot kho 26 Create database cuahangthoitrang use cuahangthoitrang drop database cuahangthoitrang go Tạo Bảng create table khachhang ( MaKH varchar (10) not null , HoTen nvarchar (50), NgaySinh datetime, DiaChi nvarchar(50), GioiTinh varchar(3),) create table nhanvien ( MaNV varchar(10) not null, HoTen nvarchar(50), NgaySinh datetime, GioiTinh varchar(3), DiaChi nvarchar (50), HSL float, ChucVu varchar(10), ) create table sanpham ( MaSP varchar (10) not null, TenSP nvarchar(50), MauSac varchar(20), MoTa nvarchar(50), MaHSX varchar (10), MaKho varchar(10),) create table hangsx ( MaHSX varchar(10) not null, TenSX nvarchar (50),) create table kho( MaKho varchar(10) not null, TenKho nvarchar (50), DiaChi nvarchar (50), SDT varchar (11), MaNV varchar (10) not null,) create table hoadonnhap ( MaHDN varchar(10) not null, NgayLap datetime, MaNV varchar (10) not null,) create table hoadonxuat ( MaHDX varchar (10) not null, NgayLap datetime , MaNV varchar (10) not null, MaKH varchar (10) not null,) create table nv_sdt ( MaNV varchar (10) not null, SDT varchar (11) not null,) create table kh_sdt ( MaKH varchar (10) not null, SDT varchar (11) not null,) create table hoadonxuat_chitiet ( MaHDX varchar (10) not null, MaSP varchar (10) not null, DGX int, SoLuong int,) create table hoadonnhap_chitiet ( MaHDN varchar (10) not null, MaSP varchar (10) not null, DGN int, SoLuong int,) create table kho_chitiet ( MaKho varchar (10) not null, MaSP varchar (10) not null, SoLuong int,) Tạo khóa alter table khachhang add constraint PK_MaKH primary key (MaKH) alter table nhanvien add constraint PK_MaNV primary key (MaNV) alter table sanpham add constraint PK_MaSP primary key (MaSP) alter table hoadonnhap add constraint PK_MaHDN primary key (MaHDN) alter table hoadonxuat add constraint PK_MaHDX primary key (MaHDX) alter table kho add constraint PK_MaKho primary key (MaKho) alter table hangsx add constraint PK_MaHSX primary key (MaHSX) alter table nv_sdt add constraint PK_SDT primary key (MaNV,SDT) alter table kh_sdt add constraint PK_SDTKH primary key (MaKH,SDT) Tạo khóa phụ alter table sanpham add constraint FK_MaHSX foreign key (MaHSX) references hangsx(MaHSX) alter table kho add constraint FK_MaNV foreign key (MaNV) references nhanvien (MaNV) alter table hoadonnhap add constraint FK_MaNVHDN foreign key (MaNV) references nhanvien (MaNV) alter table hoadonxuat add constraint FK_MaNVHDX foreign key (MaNV) references nhanvien (MaNV) alter table hoadonxuat add constraint FK_MaKH foreign key (MaKH) references khachhang (MaKH) alter table hoadonnhap_chitiet add constraint FK_MaHDNCT foreign key (MaHDN) references hoadonnhap(MaHDN) alter table hoadonnhap_chitiet add constraint FK_MaSPNCT foreign key (MaSP) references sanpham(MaSP) alter table hoadonxuat_chitiet add constraint FK_MaHDXCT foreign key (MaHDX) references hoadonxuat (MaHDX) alter table hoadonxuat_chitiet add constraint FK_MaSPXCT foreign key (MaSP) references sanpham (MaSp) alter table kho_chitiet add constraint FK_MaKhoCT foreign key (MaKho) references kho(MaKho) alter table kho_chitiet add constraint FK_MaSPKCT foreign key (MaSP) references sanpham(MaSP) Tạo CK alter table khachhang add constraint GTKH check (GioiTinh in ('Nam','Nữ')) alter table nhanvien add constraint GTNV check (GioiTinh in ('Nam','Nữ')) alter table hoadonxuat add constraint ngaylap check (year(ngaylap)>2015) Tạo Constraint alter table khachhang add constraint unique_makh unique (MaKH) alter table nhanvien add constraint unique_manv unique (MaNV) alter table sanpham add constraint unique_masp unique (MaSP) alter table hangsx add constraint unique_mahang unique (MaHSX) alter table kho add constraint unique_makho unique (MaKho) alter table hoadonnhap add constraint unique_mahdn unique (MaHDN) alter table hoadonxuat add constraint unique_mahdx unique (MaHDX) alter table nv_sdt add constraint unique_sdtnv unique (SDT) alter table kh_sdt add constraint unique_sdtkh unique (SDT) Tạo Index create index idx_tenkh on khachhang(HoTen) create index idx_tennx on nhanvien (HoTen) create index idx_tensp on sanpham (TenSP) create index idx_mausp on sanpham (MauSac) create index idx_ctkho on kho_chitiet (MaKho) Nhập ghi insert into khachhang values ('KH01','Ngô Hồng Quân','12-12-1996','Hà Nội','Nam') insert into khachhang values ('KH02','Nguyễn Quang Hợp','12-12-1996','Hà Nội','Nam') insert into khachhang values ('KH03','Đào Thị Lệ','02-10-1996','Hà Nội','Nữ') insert into khachhang values ('KH04','Nguyễn Văn A','04-05-1989','Quảng Ninh','Nam') insert into khachhang values ('KH05','Trần Gia B','03-02-2000','Hà Nam','Nữ') insert into hoadonxuat values ('HD07','09-10-2016','NV07','KH07') insert into hoadonxuat values ('HD08','11-12-2016','NV08','KH08') insert into hoadonnhap_chitiet values ('HD01','SP01','100000','20') insert into hoadonnhap_chitiet values ('HD02','SP02','200000','50') insert into hoadonnhap_chitiet values ('HD03','SP03','150000','40') insert into hoadonnhap_chitiet values ('HD04','SP04','500000','30') insert into hoadonnhap_chitiet values ('HD05','SP05','500000','10') insert into hoadonnhap_chitiet values ('HD06','SP06','200000','30') insert into hoadonnhap_chitiet values ('HD07','SP07','300000','40') insert into hoadonnhap_chitiet values ('HD08','SP08','400000','60') insert into hoadonxuat_chitiet values ('HD01','SP01','120000','5') insert into hoadonxuat_chitiet values ('HD02','SP02','220000','5') insert into hoadonxuat_chitiet values ('HD03','SP03','190000','3') insert into hoadonxuat_chitiet values ('HD04','SP04','570000','2') insert into hoadonxuat_chitiet values ('HD05','SP05','550000','1') insert into hoadonxuat_chitiet values ('HD06','SP06','230000','2') insert into hoadonxuat_chitiet values ('HD07','SP07','350000','6') insert into hoadonxuat_chitiet values ('HD08','SP08','470000','2') insert into kho_chitiet values ('KHO1','SP01','100') insert into kho_chitiet values ('KHO2','SP02','100') insert into kho_chitiet values ('KHO3','SP03','100') insert into kho_chitiet values ('KHO1','SP04','100') insert into kho_chitiet values ('KHO2','SP05','100') insert into kho_chitiet values ('KHO5','SP06','100') insert into kho_chitiet values ('KHO4','SP07','100') insert into kho_chitiet values ('KHO4','SP08','100') Xoa truong thu o moi bang alter table khachhang drop column HoTen alter table nhanvien drop column HoTen alter table sanpham drop column TenSP alter table hangsx drop column TenSX alter table kho drop column TenKho alter table hoadonnhap drop column NgayLap alter table hoadonxuat drop column NgayLap alter table nv_sdt drop column SDT alter table kh_sdt drop column SDT alter table hoadonxuat_chitiet drop column MaSP alter table hoadonnhap_chitiet drop column MaSP alter table kho_chitiet drop column MaSP Thêm trường vừa xóa alter table khachhang add HoTen nvarchar (50) alter table nhanvien add HoTen nvarchar (50) alter table sanpham add TenSP nvarchar (50) alter table hangsx add TenSX nvarchar (50) alter table kho add TenKho nvarchar (50) alter table hoadonnhap add NgayLap datetime alter table hoadonxuat add NgayLap datetime alter table nv_sdt add SDT varchar (11) alter table nv_sdt modify column SDT varchar(11) not null alter table kh_sdt add SDT varchar (11) alter table kh_sdt modify column SDT varchar(11) not null alter table hoadonxuat_chitiet add MaSP varchar (10) alter table hoadonnhap_chitiet add MaSP varchar (10) alter table kho_chitiet add MaSP varchar (10) Cập nhập nhân viên Update nhanvien set ChucVu=N'Kho' where ChucVu=N'b' update nhanvien set HSL='3' where GioiTinh=N'Nữ' -Tăng giá sản phảm có mã 03 lên 300000 update hoadonnhap_chitiet set DGN = DGN + 300000 where MaSP=N'SP03' -Chuyển số nhân viên có công việc a thành c update nhanvien set ChucVu='c' where ChucVu='a' -Lấy sđt nhân viên nữ select SDT,HoTen from nhanvien,nv_sdt where nhanvien.MaNV=nv_sdt.MaNV and GioiTinh='Nữ' Hiện khách hàng mua nhiều hàng nhất,tên loại hàng,tổng tiền select HoTen,TenSP,SoLuong,(SoLuong*DGX) as TongTien from khachhang,hoadonxuat,hoadonxuat_chitiet,sanpham where khachhang.MaKH=hoadonxuat.MaKH and hoadonxuat_chitiet.MaHDX=hoadonxuat.MaHDX and hoadonxuat_chitiet.MaSp=sanpham.MaSp order by (TongTien)desc Hiện hãng sản phẩm bán nhiều select TenSX,sum(Soluong)as TongBanDuoc from hoadonxuat,hoadonxuat_chitiet,sanpham,hangsx where hoadonxuat.MaHDX=hoadonxuat_chitiet.MaHDX and hoadonxuat_chitiet.MaSP=sanpham.MaSp and sanpham.MaHSX=hangsx.MaHSX group by hangsx.MaHSX,TenSX order by TongBanDuoc desc Đếm số nhân viên theo giới tính select GioiTinh, COUNT(GioiTinh) as SoNV from nhanvien group by GioiTinh Đếm số khách hàng theo giời tính select GioiTinh,COUNT(GioiTinh)as SoKH from khachhang group by GioiTinh order by SoKH Đếm số khách hàng select COUNT(MaKH)as sokh from khachhang -Khách hàng Hà Nội select * from khachhang where DiaChi='Hà Nội' Hiện sản phẩm có giá trị nhập lớn select TenSP,(DGN*SoLuong) as GiaTri,SoLuong from sanpham,hoadonnhap_chitiet where sanpham.MaSP=hoadonnhap_chitiet.MaSP Group by TenSP,SoLuong,DGN order by GiaTri desc Tạo View create view hangspbannhieunhat as select top TenSX,sum(Soluong)as TongBanDuoc from hoadonxuat,hoadonxuat_chitiet,sanpham,hangsx where hoadonxuat.MaHDX=hoadonxuat_chitiet.MaHDX and hoadonxuat_chitiet.MaSP=sanpham.MaSp and sanpham.MaHSX=hangsx.MaHSX group by hangsx.MaHSX,TenSX order by TongBanDuoc desc create view mausacmuanhieunhat as select top MauSac,(COUNT(hoadonxuat_chitiet.MaSP)*SoLuong) as SoLanMua from sanpham,hoadonxuat_chitiet where sanpham.MaSP=hoadonxuat_chitiet.MaSP group by MauSac,sanpham.MaSP,SoLuong order by SoLanMua desc create view sokhachhangmuanhieunhat as select top HoTen,Sum(SoLuong)as SoHangBanDuoc,(SoLuong*DGX)as DoanhThu from hoadonxuat,hoadonxuat_chitiet,nhanvien where hoadonxuat.MaHDX=hoadonxuat_chitiet.MaHDX and hoadonxuat.MaNV=nhanvien.MaNV group by HoTen, SoLuong, DGX order by (DoanhThu) desc create view khachhangoHN as select * from khachhang where DiaChi='Hà Nội' create view sanphamnhapnhieunhat as select top TenSP,(DGN*SoLuong) as GiaTri,SoLuong from sanpham,hoadonnhap_chitiet where sanpham.MaSP=hoadonnhap_chitiet.MaSP Group by TenSP,SoLuong,DGN order by GiaTri desc Tạo procedure thêm vào bảng create procedure SP_themsp (@MaSP varchar (10), @TenSP nvarchar (50),@MauSac nvarchar (10),@MoTa nvarchar(50),@MaHSX varchar(10),@MaKho varchar(10)) with recompile, encryption as insert into sanpham values (@MaSP,@TenSP,@MauSac,@MoTa,@MaHSX,@MaKho) create procedure SP_hoadonnhap (@MaHDN varchar(10),@NgayLap datetime,@MaNV varchar(10)) with recompile, encryption as insert into hoadonnhap values (@MaHDN,@NgayLap,@MaNV) create procedure SP_nhanvien (@MaNV varchar(10),@HoTen nvarchar(50),@NgaySinh datetime,@GioiTinh varchar(3),@DiaChi nvarchar(50),@HSL float,@ChucVu nvarchar(10)) with recompile,encryption as insert into nhanvien values (@MaNV,@HoTen ,@NgaySinh,@GioiTinh,@DiaChi,@HSL,@ChucVu) -Gọi Stored Procedure vừa tạo exec SP_hoadonnhap @MaHDN='',@NgayLap='',@MaNV='' exec SP_nhanvien @MaNV='',@HoTen='',@NgaySinh='',@GioiTinh='',@DiaChi='',@HSL='',@Chu cVu='' exec SP_themsp @MaSP='',@TenSP='',@MauSac='',@MoTa='',@MaHSX='',@MaKho='' -Tạo Stored Procedure xóa liệu create procedure P_nhanvien (@HSL float) with recompile,encryption as delete from nhanvien where @HSL='' Tạo Procedure tìm khách hàng lớn tuổi create procedure SP_khlontuoinhat with recompile,encryption as select top HoTen, (year(getdate())-year(NgaySinh)) as Tuoi from khachhang group by HoTen,NgaySinh order by Tuoi desc Tìm khách hàng theo mã khách hàng create procedure SP_search (@MaKH varchar(10)) with recompile,encryption as select* from khachhang where MaKH=@MaKH exec SP_search @MaKH='KH02' Tìm nhân viên theo mã nhân viên create procedure SP_search1 (@MaNV varchar(10)) with recompile,encryption as select* from nhanvien where MaNV=@MaNV exec SP_search1 @MaNV='NV01' Tìm khách hàng theo giới tính create procedure SP_timkhgt (@GioiTinh varchar (3)) with recompile,encryption as select* from khachhang where GioiTinh=@GioiTinh exec SP_timkhgt @GioiTinh="Nam" Tìm nhân viên theo giới tính create procedure SP_timnvgt (@GioiTinh varchar (3)) with recompile,encryption as select* from nhanvien where GioiTinh=@GioiTinh exec SP_timnvgt @GioiTinh="Nam" Nhập mã nhân viên tuổi, hệ số lương create procedure SP_HienTTNV (@MaNV varchar (10)) with recompile,encryption as select HoTen, datepart(yy,getdate()) - year(NgaySinh) as Tuoi,HSL from nhanvien where MaNV=@MaNV exec SP_HienTTNV @MaNV='NV06' Tạo view tuổi nhỏ create view tuoilonnhat as select YEAR(getdate())-YEAR(nhanvien.NgaySinh) as Tuoi,HoTen from nhanvien where YEAR(getdate())-YEAR (nhanvien.NgaySinh) = (select MAX(YEAR(getdate())-year(nhanvien.NgaySinh))from nhanvien) Tạo View màu sắc mua nhiều create view mausacduocmuanhieunhat as select MauSac, (hoadonxuat_chitiet.MaSP)as SoLanDuocMua where sanpham.MaSP=hoadonnhap_chitiet.MaSP group by MauSac SELECT MauSac,SUM(SoLuong) AS solanmua FROM sanpham , hoadonxuat_chitiet WHERE sanpham.masp=hoadonxuat_chitiet.masp GROUP BY mausac HAVING SUM(SoLuong) = ( SELECT TOP SUM(SoLuong) AS solanmua FROM sanpham , hoadonxuat_chitiet WHERE sanpham.masp=hoadonxuat_chitiet.masp GROUP BY MauSac ORDER BY solanmua DESC ) select MauSac,(COUNT(hoadonxuat_chitiet.MaSP)*SoLuong) as SoLanMua from sanpham,hoadonxuat_chitiet where sanpham.MaSP=hoadonxuat_chitiet.MaSP group by MauSac,sanpham.MaSP,SoLuong order by SoLanMua desc -THI Dem so luong sp hãng sx select TenSX, SUM(Soluong) as SoLuongSPHang from hangsx,sanpham,kho_chitiet where hangsx.MaHSX=sanpham.MaHSX and sanpham.MaSP=kho_chitiet.MaSP group by TenSX,hangsx.MaHSX HoaDonXuatMotNhanVien create view DanhMucXuat as select MaHDX,NgayLap,MaKH,hoadonxuat.MaNV from nhanvien,hoadonxuat where nhanvien.MaNV=hoadonxuat.MaNV and HoTen='Tạ Hữu Hoàng' Tao proc tinh tong SP mot kho create procedure TongSPMotKho (@MaKho varchar(10)) with recompile,encryption as select SUM(SoLuong)as TongSP from kho,kho_chitiet where kho.MaKho=kho_chitiet.MaKho and kho.MaKho=@MaKho group by kho_chitiet.MaKho execute TongSPMotKho @MaKho='KHO1' ... Hiện khách hàng mua nhiều hàng nhất,tên loại hàng, tổng tiền .17 Hiện hãng sản phẩm bán nhiều 17 Đếm số nhân viên theo giới tính 18 Đếm số khách hàng theo giời tính ... Procedure tìm khách hàng lớn tuổi .22 Tìm khách hàng theo mã khách hàng 22 Tìm nhân viên theo mã nhân viên 23 Tìm khách hàng theo giới tính 23 Tìm nhân viên theo giới... .26 Tao proc tinh tong SP mot kho 26 Create database cuahangthoitrang use cuahangthoitrang drop database cuahangthoitrang go Tạo Bảng create table khachhang ( MaKH varchar (10) not null

Ngày đăng: 10/04/2017, 11:12

TỪ KHÓA LIÊN QUAN

w