BÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊUBÀI BÁO CÁO HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: QUẢN LÝ SHOP TÌNH YÊU
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
BÀI BÁO CÁO
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
ĐỀ TÀI:
QUẢN LÝ SHOP TÌNH YÊU
Giảng viên hướng dẫn: TS NGUYỄN THÀNH SƠN
Trang 2MỤC LỤC
Mở đầu………
Giới thiệu hệ thống……….
Quy trình làm việc……….
1 Làm việc với SQL Server………
1.1.1 Tạo Cơ sở dữ liệu……….
1.1.2 Tạo Constraint 1.1.3 Tạo ràng buộc check 1.2 Store Procedure ………
1.2.1 Tạo Procedure lấy tất cả thông tin từ bảng……
1.2.2 Tạo Procedure thêm thông tin vào các bảng…
1.2.3 Tạo Procedure sửa thông tin trong bảng……….
1.2.4 Tạo Procedure xóa các thông tin trong bảng…
1.3 Tạo View 1.4 Tạo Function ………
1.5 Tạo Trigger……… ………
1.6 Phân quyền……….
2 Kết nối giữa SQL và C#
3 Kết nối giữa 2 máy………
4 Kết quả và ứng dụng………
5 Hướng giải quyết 1 số vấn đề đăng nhập Tài liệu tham khảo……….
Mở đầu
Ngày nay với sự bùng nổ và phát triển mạnh mẽ của lĩnh vực Công nghệ thông tin, nó đang dần trở thành một phần không thể thiếu của cuộc sống con người Công nghệ thông tin đang được phát triển và ứng dụng mạnh mẽ trong các lĩnh vực quản lý sản xuất, quản lý kinh doanh, dịch vụ, quản lý xã hội cũng như tất cả các lĩnh vực khác và quản lý bán hàng là một trong những lĩnh vực đó, thực tế đã cho thấy hiệu quả của tin học khi áp dụng vào công tác quản lý, nó đã làm giảm bớt công tác bàn giấy đồng thời góp phần đáng kể trong việc thống kê tránh những sai sót trong kinh doanh Có thể nói tin học đã trở thành một công cụ hữu hiệu đem lại hiệu quả trong công tác quản lý và kinh doanh
Trang 3Đối với công việc Quản lý một shop là tương đối phức tạp bao gồm nhiều công việc khác nhau với những nghiệp vụ khác nhau, điều đó là cho công việc quản lý trở lên khó khăn hơn, cần nhiều nhân lực và thời gian để giải quyết công việc và không tránh khởi những sai sót nhầm lẫn Do đó cần có một phương án tốt hơn,tối ưu hơn để đem lại hiệu quả trong công việc quản lý.
Trang 4Giới thiệu về hệ thống:
- Hệ thống quản lý shop nhằm cung cấp các chức năng quản lý sách, nhà cung cấp, nhân viên… Nhằm tạo sự thuận lợi cho việc quản lý nó Thuận tiện cho việc thêm xóa, sửa cũng như tìm kiếm, thống kê, xem các nhà sản xuất và quản lý nhân viên.
- Sơ đồ quan hệ giữa các thực thể.
Chương 1: Quy trình làm việc
1 LÀM VIỆC VỚI SQL SEVER
1.1.1 TẠO DATABASE VÀ CÁC BẢNG
IF EXISTS(SELECT FROM Sys.databases WHERE Name='SHOPTINHYEU')
DROP DATABASE SHOPTINHYEU
GO
CREATE DATABASE SHOPTINHYEU
GO
- TẠO BA+NG NHÀ CUNG CẤ.P
-CREATE TABLE NHACUNGCAP
MANCC NCHAR(20) PRIMARY KEY,
TENNCC NVARCHAR(100) NOT NULL,
- TẠO BA+NG LOẠI SA+N
PHA+M -CREATE TABLE LOAISANPHAM
MALOAISP NCHAR(20) PRIMARY KEY NOT NULL,
TENLOAISP NVARCHAR(100) NOT NULL,
DACDIEM NVARCHAR(100)
)
GO
- TẠO ĐƠN VỊ
TÍNH -CREATE TABLE DONVITINH
MADVT NCHAR(10) PRIMARY KEY NOT NULL,
TENDVT NCHAR(20) NOT NULL,
)
GO
- TẠO BA+NG SA+N PHẤ+M
-CREATE TABLE SANPHAM
MASP NCHAR(20) PRIMARY KEY NOT NULL,
TENSP NVARCHAR(100) NOT NULL,
MALOAISP NCHAR(20) NOT NULL FOREIGN KEY REFERENCES LOAISANPHAM(MALOAISP),
MADTV NCHAR(20) NOT NULL FOREIGN KEY REFERENCES DONVITINH(MADVT),
DONGIA INT NOT NULL,
SOLUONGTON INT NOT NULL,
VITRI NCHAR(15) NOT NULL,
HINH VARBINARY(MAX) NOT NULL,
GHICHU NVARCHAR(200),
)
GO
- TẠO BA+NG BỘ PHẬN
Trang 5-CREATE TABLE BOPHAN
MABOPHAN NCHAR(20) PRIMARY KEY,
TENBOPHAN NVARCHAR(100) NOT NULL
)
GO
- TẠO BA+NG NHẤN VIÊN
-CREATE TABLE NHANVIEN
MANHANVIEN NCHAR(20) PRIMARY KEY NOT NULL,
TENNHANVIEN NVARCHAR(100) NOT NULL,
PHAI NCHAR( ) NOT NULL,
NGAYSINH DATE NOT NULL,
DIACHI NVARCHAR(200),
SODIENTHOAI NCHAR(11),
MABOPHAN NCHAR(20) NOT NULL FOREIGN KEY REFERENCES BOPHAN(MABOPHAN),
HINH VARBINARY(MAX) NOT NULL,
GHICHU NVARCHAR(200),
)
GO
- TẠO BA+NG TÀI KHOA+N
-CREATE TABLE TAIKHOAN
MANHANVIEN NCHAR(20) NOT NULL,
TAIKHOAN NVARCHAR(50) NOT NULL,
MATKHAU NVARCHAR(50) NOT NULL,
PRIMARY KEY(MANHANVIEN,TAIKHOAN),
FOREIGN KEY(MANHANVIEN) REFERENCES NHANVIEN(MANHANVIEN),
)
GO
- TẠO BA+NG HÓA ĐƠN NHẬP
-CREATE TABLE HOADONNHAP(
MAHDN NCHAR(10) PRIMARY KEY,
MANCC NCHAR(20) NOT NULL FOREIGN KEY REFERENCES NHACUNGCAP(MANCC),
MANHANVIEN NCHAR(20) NOT NULL FOREIGN KEY REFERENCES NHANVIEN(MANHANVIEN),
TONGGIATRI FLOAT,
NGAYNHAP DATE NOT NULL
)
GO
- TẠO BA+NG CHI TIÊ.T HÓA ĐƠN NHẬP
-CREATE TABLE CHITIETHOADONNHAP
MAHDN NCHAR(10),
MASP NCHAR(20),
SOLUONG INT NOT NULL,
GIANHAP INT NOT NULL
PRIMARY KEY(MAHDN,MASP),
FOREIGN KEY(MAHDN) REFERENCES HOADONNHAP(MAHDN),
FOREIGN KEY(MASP) REFERENCES SANPHAM(MASP)
)
GO
- TẠO BA+NG HÓA ĐƠN BÁN
-CREATE TABLE HOADONBAN(
MAHDB NCHAR(10) PRIMARY KEY,
TENKHACHHANG NVARCHAR(100),
DIACHI NVARCHAR(100),
MANHANVIEN NCHAR(20)FOREIGN KEY REFERENCES NHANVIEN(MANHANVIEN),
TONGTIEN FLOAT NOT NULL,
NGAYBAN DATE NOT NULL
)
GO
- TẠO BA+NG CHI TIÊ.T HÓA ĐƠN BÁN
-CREATE TABLE CHITIETHOADONBAN
MAHDB NCHAR(10),
Trang 6MASP NCHAR(20),
SOLUONG INT NOT NULL,
DONGIA INT NOT NULL,
PRIMARY KEY(MAHDB,MASP),
FOREIGN KEY(MAHDB) REFERENCES HOADONBAN(MAHDB),
FOREIGN KEY(MASP) REFERENCES SANPHAM(MASP)
)
GO
- TẠO BA+NG TÀI KHOA+N
-CREATE TABLE [dbo].[TK](
[USERNAME] [nchar](20) NOT NULL,
[PASSWORD] [nvarchar](50) NOT NULL,
ALTER TABLE [dbo].[TK] WITH CHECK ADD CONSTRAINT [FK_USER_NHANVIEN] FOREIGNKEY([USERNAME])
REFERENCES [dbo].[NHANVIEN] [MANHANVIEN])
GO
- TẠO BA+NG CHỨC NĂNG
-CREATE TABLE [dbo].[CHUCNANG](
[MACHUCNANG] [nchar](10) NOT NULL,
[TENCHUCNANG] [nchar](10) NOT NULL
GO
- TẠO BA+NG CHỨC NĂNG
-CREATE TABLE [dbo].[CHITIETCHUCNANG](
[MACHUCNANG] [nchar](10) NOT NULL,
[ID] [nchar](20) NOT NULL,
ALTER TABLE [dbo].[CHITIETCHUCNANG] WITH CHECK ADD CONSTRAINT
[FK_CHITIETCHUCNANG_CHUCNANG] FOREIGN KEY([MACHUCNANG])
REFERENCES [dbo].[CHUCNANG] [MACHUCNANG])
GO
ALTER TABLE [dbo].[CHITIETCHUCNANG] WITH CHECK ADD CONSTRAINT
[FK_CHITIETCHUCNANG_USER] FOREIGN KEY([ID])
REFERENCES [dbo].[TK] [USERNAME])
ALTER TABLE NHACUNGCAP ADD CONSTRAINT UQ_TENNHACCLADUYNHAT
UNIQUE(TENNCC), UNIQUE(SODIENTHOAI),UNIQUE(DIACHI)
GO
ALTER TABLE NHANVIEN ADD CONSTRAINT UQ_THONGTINNHANVIEN
UNIQUE(TENNHANVIEN,PHAI,NGAYSINH), UNIQUE(SODIENTHOAI)
GO
1.1.3 TẠO RÀNG BUỘC CHECK
- SỬ+A BA+NG - THÊM RÀNG BUỘC
Trang 7CHECK -ALTER TABLE SANPHAM ADD CONSTRAINT CK_Soluongton
ALTER TABLE NHACUNGCAP ADD CONSTRAINT CK_sdt1
CHECK ( SODIENTHOAI LIKE 9]')
'0[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-GO
ALTER TABLE NHANVIEN ADD CONSTRAINT CK_sdt2
CHECK (SODIENTHOAI LIKE '0[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
GO
1.2 TẠO STORE PROCEDURE
1.2.1 Tạo Procedure lấy tất cả thông tin từ bảng
CREATE PROC spLayNhaCungCap
Trang 9update SanPham set SoLuongTon @SoLuongTon
where MaSP @maSP
1.2.2 Tạo Procedure thêm thông tin vào các bảng
CREATE PROC spThemNhaCungCap
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'Lỗi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'Lỗi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'Lỗi: ' ERROR_MESSAGE()
RAISERROR(@ErrorMessage, 16, 1)
END CATCH
Trang 10INSERT INTO SANPHAM VALUES
(@masp,@tensp,@maloaisp,@madvt,@dongia,@soluongton,@hinh,@ghichu)
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
INSERT INTO NHANVIEN VALUES
(@manv,@tennv,@phai,@ngaysinh,@diachi,@sdt,@mabp,@hinh,@ghichu)
COMMIT
END TRY
Trang 11BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
INSERT INTO HOADONNHAP(MAHDN,MANCC,MANHANVIEN,TONGGIATRI,NGAYNHAP)
VALUES (@mahdn,@mancc,@manv,@tonggiatri,@ngaynhap)
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
Trang 12INSERT INTO
HOADONBAN(MAHDB,TENKHACHHANG,DIACHI,MANHANVIEN,TONGTIEN,NGAYBAN) VALUES
(@mahdb,@tenkh,@diachi,@manv,@tongtien,@ngayban)
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
RAISERROR(@ErrorMessage, 16, 1)
END CATCH
GO
1.2.3 Tạo Procedure sửa thông tin trong bảng
CREATE PROC spSuaNhaCungCap
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
Trang 13SET TENLOAISP=@tenloaisp,DACDIEM=@dacdiem
WHERE MALOAISP=@maloaisp
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
SET TENDVT=@tendvt
WHERE MADVT=@madvt
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
RAISERROR(@ErrorMessage, 16, 1)
END CATCH
Trang 14SET TENBOPHAN=@tenbp,LUONG=@luong
WHERE MABOPHAN=@mabp
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
SET TAIKHOAN=@taikhoan, MATKHAU=@matkhau
WHERE MANHANVIEN=@manv
Trang 15END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
RAISERROR(@ErrorMessage, 16, 1)
END CATCH
GO
1.2.4 Tạo Procedure xóa các thông tin trong bảng
CREATE PROC spXoaNhaCungCap
@mancc nchar(20)
AS
BEGIN TRAN
BEGIN TRY
DELETE FROM NHACUNGCAP
WHERE MANCC @mancc
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DELETE FROM LOAISANPHAM
WHERE MALOAISP=@maloaisp
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DELETE FROM DONVITINH
WHERE MADVT=@madvt
Trang 16SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DELETE FROM SANPHAM
WHERE MASP=@masp
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DELETE FROM BOPHAN
WHERE MABOPHAN=@mabp
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
DELETE FROM NHANVIEN
WHERE MANHANVIEN=@manv
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
Trang 17BEGIN TRAN
BEGIN TRY
DELETE FROM TAIKHOAN
WHERE MANHANVIEN=@manv
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
DECLARE @ErrorMessage VARCHAR(2000)
SELECT @ErrorMessage 'LỗVi: ' ERROR_MESSAGE()
SELECT dbo.TK.*, dbo.CHUCNANG.TENCHUCNANG
FROM dbo.TK INNER JOIN
dbo.CHITIETCHUCNANG ON dbo.TK.USERNAME
dbo.CHITIETCHUCNANG.ID INNER JOIN
dbo.CHUCNANG ON dbo.CHITIETCHUCNANG.MACHUCNANG
dbo.CHUCNANG.MACHUCNANG
GO
-CREATE VIEW [dbo].[View_HDB]
AS
SELECT MAHDB, TENKHACHHANG, DIACHI, MANHANVIEN, TONGTIEN, NGAYBAN
FROM dbo.HOADONBAN
Trang 18-Create function [dbo].[layMatKhau](@ID nchar(10))
- TẠO TRIGGER SỐ ĐIỆN THOẠI CU+A NHÀ CUNG CẤ.P KHỐNG ĐỬỢC
TRÙNG VỚI SỐ ĐIỆN THOẠI CU+A NHẤN VIÊN
-CREATE TRIGGER TG_SDTNCCKHONGTRUNGSDTNV
SELECT @SDT SODIENTHOAI FROM inserted
IF(@SDT IN SELECT SODIENTHOAI FROM NHANVIEN))
BEGIN
RAISERROR('So dien thoai da ton tai trong quan he NHANVIEN',16, );
ROLLBACK TRANRETURN
SELECT @SDT SODIENTHOAI FROM inserted
IF(@SDT IN SELECT SODIENTHOAI FROM NHACUNGCAP))
BEGIN
RAISERROR('So dien thoai da ton tai trong quan he NHANVIEN',16, );
ROLLBACK TRANRETURN
END
END
GO
- TẠO TRIGGER SỐ ĐỊA CHI+ CU+A NHẤN VIÊN KHỐNG ĐỬỢC TRÙNG
VỚI ĐỊA CHI+ CU+A NHÀ CUNG CẤ.P
-CREATE TRIGGER TG_DIACHINVKHONGTRUNGDIACHINCC
ON NHANVIEN
FOR INSERT,UPDATE
Trang 19BEGIN
DECLARE @Diachi NVARCHAR(200)
SELECT @Diachi DIACHI FROM inserted
IF(@Diachi IN SELECT DIACHI FROM NHACUNGCAP))
BEGIN
RAISERROR('Dia chi da ton tai trong quan he NHACUNGCAP',16, );
ROLLBACK TRANRETURN
END
END
GO
- TẠO TRIGGER ĐỊA CHI+ CU+A NHÀ CUNG CẤ.P KHỐNG ĐỬỢC TRÙNG
VỚI ĐỊA CHI+ CU+A NHẤN VIÊN
-CREATE TRIGGER TG_DIACHINCCKHONGTRUNGDIACHINV
ON NHACUNGCAP
FOR INSERT,UPDATE
AS
BEGIN
DECLARE @Diachi NVARCHAR(200)
SELECT @Diachi DIACHI FROM inserted
IF(@Diachi IN SELECT DIACHI FROM NHANVIEN))
BEGIN
RAISERROR('Dia chi da ton tai trong quan he NHANVIEN',16, );
ROLLBACK TRANRETURN
DECLARE @gia INT,@masp NCHAR(20)
SELECT @gia GIANHAP,@masp=MASP FROM inserted
IF(@gia >= SELECT DONGIA
FROM SANPHAM WHERE MASP=@masp))
BEGIN
UPDATE SANPHAMSET DONGIA=@gia*1.5
WHERE MASP=@maspEND
Trang 20ON CHITIETHOADONNHAP
FOR INSERT,UPDATE
AS
BEGIN
DECLARE @masp NCHAR(20),@sl INT
SELECT @masp MASP,@sl=SOLUONG FROM inserted
UPDATE SANPHAM
SET SOLUONGTON=SOLUONGTON+@sl
WHERE MASP=@masp
END
GO
1.6 PHÂN QUYỀN
- Tạo role BanHang, ThuKho, QuanLy
- Gán quyền cho role đó
- Add các user vào
- Gán quyền cho user QuanLy có các quyền: Tất cả quyền.
ThuKho có các quyền: Trừ quyền Bán hàng, Quản lý nhân viên và Tra cứu hóa đơn.
BanHang có các quyền: Không được sử dụng bảng Nhập hàng, Nhà cung cấp, Tra cứu hóa đơn và các công việc Quản lý bộ phận và quản lý nhân viên.
use SHOPTINHYEU
go
Phan quyen cho role BANHANG
thao tac tren cac bang
grant select on SANPHAM to BanHang
grant select on View_SanPham to BanHang
grant select, insert on HOADONBAN to BanHang
grant select, insert, update, delete on CHITIETHOADONBAN to BanHang
grant select, insert, update, delete on DONVITINH to BanHang
grant select, insert, update, delete on LOAISANPHAM to BanHang
grant select, update on TK to BanHang
grant select on NHANVIEN to BanHang
grant select on BOPHAN to BanHang
Thuc thi cac store procedure
grant execute on spThemSP to BanHang
grant execute on spSuaSanPham to BanHang
grant execute on spXoaSanPham to BanHang
grant execute on spThemLoaiSP to BanHang
grant execute on spSuaLoaiSP to BanHang
grant execute on spXoaLoaiSP to BanHang
grant execute on spThemDVT to BanHang
grant execute on spSuaDVT to BanHang
grant execute on spXoaDVT to BanHang
grant execute on spThemHoaDonBan to BanHang
grant execute on spThemCTHDB to BanHang
grant execute on spSuaCTHD to BanHang
grant execute on sp_CapNhatSoLuongTon to BanHang
grant execute on sp_layMatKhau to BanHang
Thuc thi cac function
grant execute on layMatKhau to BanHang
Trang 21grant execute on laySoLuongTon to BanHang
Phan quyen cho Role QuanKho
Thao tac tren cac bang
grant select, insert, update, delete on NHACUNGCAP to QuanKho
grant select, insert, update, delete on SANPHAM to QuanKho
grant select, insert on HOADONNHAP to QuanKho
grant select, insert, update on CHITIETHOADONNHAP to QuanKho
grant select, insert, update, delete on DONVITINH to QuanKho
grant select, insert, update, delete on LOAISANPHAM to QuanKho
grant select, update on TK to QuanKho
grant select on NHANVIEN to QuanKho
grant select on BOPHAN to QuanKho
Thuc thi tren cac store
grant execute on spThemNhaCungCap to QuanKho
grant execute on spSuaNhaCungCap to QuanKho
grant execute on spXoaNhaCungCap to QuanKho
grant execute on spThemHoaDonNhap to QuanKho
grant execute on spThemCTHDN to QuanKho
grant execute on spSuaCTHDN to QuanKho
grant execute on spThemLoaiSP to QuanKho
grant execute on spSuaLoaiSP to QuanKho
grant execute on spXoaLoaiSP to QuanKho
grant execute on spThemDVT to QuanKho
grant execute on spSuaDVT to QuanKho
grant execute on spXoaDVT to QuanKho
grant execute on spThemSP to QuanKho
grant execute on spSuaSanPham to QuanKho
grant execute on spXoaSanPham to QuanKho
grant execute on sp_CapNhatSoLuongTon to QuanKho
grant execute on sp_layMatKhau to QuanKho
Thuc thi cac function
grant execute on laySoLuongTon to QuanKho
grant execute on layMatKhau to QuanKho
Phan quyen cho role QuanLy
Quyen thao tac tren cac table
grant select, insert, update, delete on NHANVIEN to QuanLy with grant optiongrant select, insert, update, delete on TK to QuanLy with grant option
grant select, insert, update, delete on CHUCNANG to QuanLy with grant optiongrant select, insert, update, delete on CHITIETCHUCNANG to QuanLy with grantoption
grant select, insert, update, delete on SANPHAM to QuanLy with grant optiongrant select, insert on HOADONBAN to QuanLy with grant option
grant select, insert, update, delete on CHITIETHOADONBAN to QuanLy with grantoption
grant select, insert, update, delete on DONVITINH to QuanLy with grant optiongrant select, insert, update, delete on LOAISANPHAM to QuanLy with grant
option
grant select, update on TK to QuanLy with grant option
grant select, insert, update, delete on NHACUNGCAP to QuanLy with grant optiongrant select, insert on HOADONNHAP to QuanLy with grant option
grant select, insert, update on CHITIETHOADONNHAP to QuanLy with grant optiongrant select, insert, update on BOPHAN to QuanLy with grant option
Quyen thuc thi cac store
grant execute on spThemNhanVien to QuanLy with grant option
grant execute on spSuaNhanVien to QuanLy with grant option