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

Báo cáo bài tập lớn 1 thiết kế cơ sở dữ liệu phân tán

45 2 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

Thông tin cơ bản

Tiêu đề Báo cáo bài tập lớn 1 thiết kế cơ sở dữ liệu phân tán
Tác giả Lê Thị Ngọc Hảo, Nguyễn Thị Thu Thủy, Nguyễn Cẩm Tú, Nguyễn Hoàng Ngọc Hạnh
Người hướng dẫn Nguyễn Minh Nhựt, Giảng viên
Trường học Đại Học Công Nghệ Thông Tin - Đại Học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Cơ sở dữ liệu phân tán
Thể loại Báo cáo bài tập lớn
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 45
Dung lượng 4,55 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

CTHDSOHD, MASP, SL, GIAMGIA Tân từ: Mỗi chi ti ết hóa đơn có số hóa đơnSOHD và mã s ản ph ẩmMASP để phân bi ệ t, số lượng m ỗi sả n ph ẩmSL và s gi m giáGIAMGIA... 6 –CREATE TABLE CUAH

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

Môn: Cơ sở dữ liệu phân tán

Trang 2

2 –

MỤC L C

MỤC L C 2

Chương 1: Thiết kế cơ sở ữ liệu phân tán trên môi trường máy ảo, Radmin 4 d

1.1 Thi ết k và mô tế ả CSDL phân tán 4

1.1.1 Mô hình v ật lý 4

1.1.2 Mô hình d ữ u quan h liệ 4

1.2 Xây dựng CSDL phân tán 5

1.2.1 DDL 5

1.2.2 DML 8

1.3 Kiến trúc phân mảnh: 17

1.4 Kiến trúc phân quyền 18

1.4.1 Mô t c u trúc phân quyả ấ ền 18

1.4.2 Minh h ọa 19

1.5 Các câu truy vấ 21 n 1.5.1 Câu truy v n 1: 21

1.5.2 Câu truy v n 2: 21

1.5.3 Câu truy v n 3: 22

1.5.4 Câu truy v n 4: 22

1.5.5 Câu truy v n 5: 23

1.5.6 Câu truy v n 6: 23

1.5.7 Câu truy v n 7: 24

1.5.8 Câu truy v n 8: 24

1.5.9 Câu truy v n 9: 25

1.5.10 Câu truy v n 10: 25

Chương 2: Viết hm, th t c, r ng bu c to n v     n truy vấn trên môi trường phân t n 27á 2.1 Hàm Function– 27

2.1.1 Function đếm s ố lượng hóa đơn của sản phẩm c n tìm c 2 chi nhánh.ầ ở ả 27

2.1.2 Function đếm s ố lượng khách hàng có c ấp độ ần tìm c 2 chi nhánh c ở ả 27

2.1.3 Function tìm xem khách hàng đăng ký ở chi nhánh nào 28

2.2 Th t  c – Procedure 28

2.2.1 Procedure in ra thông tin trang s c v i tình tr ng còn hàng trong kho chi nhánh c n tìm.ứ ớ ạ ở ầ 28

2.2.2 Procedure in ra thông tin trang s c và số lượng trong kho được nhập trong tháng c n tìm. 29

2.2.3 Procedure in ra thông tin chi tiết hóa đơn của khách hàng c n tìm. 30

2.3 Ràng bu c toàn vn – Trigger 31

2.3.1 Trigger ngày nhp hàng ph i lớn hơn ngày sản xuất của s n phẩm 31

2.3.2 Trigger c p nhậ ậ ổt t ng ti ền d a trên cự ấp độ ủ c a khách hàng 32

2.3.3 Trigger c p nhật điểm tích lũy dựa trên t ng tiền 33

Trang 3

3 –

2.3.4 Trigger c p nhậ ậ ốt s lư ng s n phẩm trong kho khi đặt hàng 34 ợ ả

Chương 3: Demo các m c cô lp (ISOLATION LEVEL) trong môi trường phân t n 36á

3.1 Trường hợp Lost Update 36

3.1.1 Mô t tình huống 36

3.1.2 Minh h ọa 36

3.1.3 Gi i pháp 36

3.3 Trường hợp Phantom Read 37

3.3.1 Mô t tình huống 37

3.3.2 Minh h ọa 37

3.3.3 Gii pháp 37

3.2 Trường hợp Unrepeatable Read 37

3.2.1 Mô t tình huống 37

3.2.2 Minh h ọa 38

3.2.3 Gii pháp 38

3.4 Trường hợp Deadlock 38

3.4.1 Mô t tình huống 38

3.4.2 Minh h ọa 39

3.4.3 Gii pháp 39

Chương 4: Thực hiện ti ưu ha truy v ấn trên môi trường phân tán 1 câu truy v n ấ đơn giản 40

4.1 Câu truy vấn đơn giản chưa ti ưu 40

4.2 EXPLAIN QUERY câu truy vấn đơn giản 40

4.3 Ti ưu ha câu truy v n c c b , phân tấ   án 41

4.4 Vi t l ế ại câu query trên môi trường phân tán 43

Chương 5: Cơ chế nhân b n trong Microsoft SQL Server ho c Oracle (Option Bonus +2.00) ả ặ Error! Bookmark not defined

TÀI LI U THAM KH O 44Ệ Ả

BẢNG PHÂN CÔNG CÔNG VI C 45

Trang 4

4 –

Chương 1: Thiết k cơ sở dữ li u phân tán ế ệ trên môi trườ ng máy ảo, Radmin

1.1 Thiết kế và mô t CSDL phân tán

1.1.1 Mô hình v ật lý

1.1.2 Mô hình d ữ liệ u quan h

CSDL quản lý các chi nhánh c ủa cử a hàng trang s c ứ

Cửa hàng trang s c có 2 chi nhánh, chi nhánh chính n ứ ằm ở Quận 3, TP HCM và chi nhánh

ở Quận Hoàn Kiếm, Hà Nội

Lượ c đ cơ sở ồ dữ li ệu như sau:

CHINHANH (MACN, TENCN, DCHI, SODT)

Tân t : M ừ ỗi chi nhánh có mã chi nhánh (MACN) dùng để phân bi t gi a các chi nhánh v ệ ữ ới nhau, tên chi nhánh (TENCN), đị a chỉ (DCHI) và số điện thoại (SODT) của chi n hánh đó

TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN)

Tân t : M i trang s c có mã trang s c (MASP) là duy nh t, tên trang s c (TENSP), ngày ừ ỗ ứ ứ ấ ứ sản xu t (NGAYSX), nhãn hi u (NHANHIEU) và giá ti n (GIATIEN) c ấ ệ ề ủa trang sức đó

NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU,

DTHOAI, LUONGCOBAN, MACN)

Tân t : M i nhân viên có mã nhân viên (MANV) là duy nh t, h tên (HOTEN), gi i tính ừ ỗ ấ ọ ớ

(MACN) nơi nhân viên đó làm việc

KHO_QL (MACN, MASP, SOLUONG, NGAYNH)

Tân t : M ừ ỗi quả n lý kho s có thông tin mã chi nhánh (MACN), mã trang s c (MASP), s ẽ ứ ố

Trang 5

5 –

KHO_NV (MACN, MASP, TINHTRANG, KHUYENMAI)

Tân từ: Mỗi nhân viên kho s có thông tin mã chi nhánh (MACN), mã trang s c (MASP), ẽ ứ

sức đó

KHACHHANG(MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH,

DIEMTICHLUY, NGDK, CAPDO, MACN)

Tân t ừ: Mỗ i khách hàng s có m t mã khách hàng duy nh t(MAKH), thông tin h ẽ ộ ấ ọ

thành viên(CAPDO) và mã chi nhánh đã đăng kí thành viên(MACN)

HD(SOHD, NGHD, MAKH, MANV, TONGTIEN, PTTHANHTOAN)

hàng đã mua(MAKH), mã nhân viên đã bán sản phẩm(MANV), tổng tiền của hóa đơn(TONGTIEN) và phương thức thanh toán(PTTHANHTOAN)

CTHD(SOHD, MASP, SL, GIAMGIA)

Tân từ: Mỗi chi ti ết hóa đơn có số hóa đơn(SOHD) và mã s ản ph ẩm(MASP) để phân bi ệ t,

số lượng m ỗi sả n ph ẩm(SL) và s gi m giá(GIAMGIA) ố ả

1.2 Xây d ng CSDL phân tán

1.2.1 DDL

Thực hi n t o b ng, t o khóa chính, khóa ngo i và t o cho 2 User CUAHANG1 và ệ ạ ả ạ ạ ạ CUAHANG2:

ALTER SESSION SET NLS DATE FORMAT = 'DD/MM/YYYY HH24:MI:SS';

CREATE TABLE CUAHANG1.CHINHANH

CREATE TABLE CUAHANG1.TRANGSUC

CREATE TABLE CUAHANG1.NHANVIEN

Trang 6

6 –

CREATE TABLE CUAHANG1.KHO_NV

CAPDO VARCHAR2(7), MACN VARCHAR2(10), CONSTRAINT PK_KH PRIMARY KEY (MAKH)

);

Trang 7

7 –

ALTER TABLE CUAHANG1.NHANVIEN ADD

CONSTRAINT FK_NV_CN_1 FOREIGN KEY

(MACN) REFERENCES CHINHANH(MACN);

ALTER TABLE CUAHANG1.KHO_QL ADD

CONSTRAINT FK_KHOQL_CN_2 FOREIGN KEY

(MACN) REFERENCES CHINHANH(MACN);

ALTER TABLE CUAHANG1.KHO_QL ADD

CONSTRAINT FK_KHOQL_TS_3 FOREIGN KEY

(MASP) REFERENCES TRANGSUC(MASP);

ALTER TABLE CUAHANG1.KHO_NV ADD

CONSTRAINT FK_KHONV_CN_4 FOREIGN KEY

(MACN) REFERENCES CHINHANH(MACN);

ALTER TABLE CUAHANG1.KHO_NV ADD

CONSTRAINT FK_KHONV_TS_5 FOREIGN KEY

(MASP) REFERENCES TRANGSUC(MASP);

ALTER TABLE CUAHANG1.KHACHHANG ADD

CONSTRAINT FK_KH_CN_6 FOREIGN KEY

(MACN) REFERENCES CHINHANH(MACN);

ALTER TABLE CUAHANG1.HD ADD

CONSTRAINT FK_HD_KH_7 FOREIGN KEY

(MAKH) REFERENCES KHACHHANG(MAKH);

ALTER TABLE CUAHANG1.HD ADD

CONSTRAINT FK_HD_NV_8 FOREIGN KEY

(MANV) REFERENCES NHANVIEN(MANV);

ALTER TABLE CUAHANG1.HD ADD

CONSTRAINT FK_HD_CN_9 FOREIGN KEY

(MACN) REFERENCES CHINHANH(MACN);

ALTER TABLE CUAHANG1.CTHD ADD

CONSTRAINT FK_CTHD_TS_10 FOREIGN KEY

(MASP) REFERENCES TRANGSUC(MASP);

ALTER TABLE CUAHANG2.NHANVIEN ADD CONSTRAINT FK_NV_CN_1 FOREIGN KEY (MACN) REFERENCES CHINHANH(MACN); ALTER TABLE CUAHANG2.KHO_QL ADD CONSTRAINT FK_KHOQL_CN_2 FOREIGN KEY (MACN) REFERENCES CHINHANH(MACN); ALTER TABLE CUAHANG2.KHO_QL ADD CONSTRAINT FK_KHOQL_TS_3 FOREIGN KEY (MASP) REFERENCES TRANGSUC(MASP); ALTER TABLE CUAHANG2.KHO_NV ADD CONSTRAINT FK_KHONV_CN_4 FOREIGN KEY (MACN) REFERENCES CHINHANH(MACN); ALTER TABLE CUAHANG2.KHO_NV ADD CONSTRAINT FK_KHONV_TS_5 FOREIGN KEY (MASP) REFERENCES TRANGSUC(MASP); ALTER TABLE CUAHANG2.KHACHHANG ADD CONSTRAINT FK_KH_CN_6 FOREIGN KEY (MACN) REFERENCES CHINHANH(MACN); ALTER TABLE CUAHANG2.HD ADD CONSTRAINT FK_HD_KH_7 FOREIGN KEY (MAKH) REFERENCES KHACHHANG(MAKH); ALTER TABLE CUAHANG2.HD ADD CONSTRAINT FK_HD_NV_8 FOREIGN KEY (MANV) REFERENCES NHANVIEN(MANV); ALTER TABLE CUAHANG2.HD ADD CONSTRAINT FK_HD_CN_9 FOREIGN KEY (MACN) REFERENCES CHINHANH(MACN); ALTER TABLE CUAHANG2.CTHD ADD CONSTRAINT FK_CTHD_TS_10 FOREIGN KEY (MASP) REFERENCES TRANGSUC(MASP);

CÁC RÀNG BU C

- Giá tiền c a trang s c ph ủ ứ ải lớn hơn 500000

ALTER TABLE CUAHANG1.TRANGSUC ADD CONSTRAINT CHECK_TS_1 CHECK(GIATIEN > 500000);

- Giới tính c ủa nhân viên là ‘Nam’ hoặc ‘Nu’

ALTER TABLE CUAHANG1.NHANVIEN ADD CONSTRAINT CHECK_NV_2 CHECK(GIOITINH IN('Nam', 'Nu'));

- Ngày vào làm c a nhân viên ph ủ ải lớn hơn ngày sinh của nhân viên đó

ALTER TABLE CUAHANG1.NHANVIEN ADD CONSTRAINT CHECK_NV_3 CHECK(NGAYVL > NGSINH);

- Chức vụ c a nhân viên ủ là ‘Nhan vien’, ‘Thu ngan’, ‘Quan ly’

ALTER TABLE CUAHANG1.NHANVIEN ADD CONSTRAINT CHECK_NV_4 CHECK(CHUCVU IN('Nhan vien', 'Thu ngan', 'Quan ly'));

- Số lượng c a s n ph m mà b ng ủ ả ẩ ả quản lý kho qu n lý ph i l ả ả ớn hơn hoặc bằ ng 0

ALTER TABLE CUAHANG1.KHO_QL ADD CONSTRAINT CHECK_QL_5 CHECK(SOLUONG >= 0);

- Tình trạng c a trang s ủ ức do nhân viên kho qu ản lý là ‘Het Hang’ hoặc ‘Con Hang’

Trang 8

8 –

IN('Con Hang', 'Het Hang'));

- Giới tính c a khách ủ hàng là ‘Nam’ hoặc ‘Nu’

ALTER TABLE CUAHANG1.KHACHHANG ADD CONSTRAINT CHECK_KH_7 CHECK(GIOITINH IN ('Nam', 'Nu'));

- Ngày đăng kí khách hàng phải lớn hơn ngày sinh của khách hàng đó

ALTER TABLE CUAHANG1.KHACHHANG ADD CONSTRAINT CHECK_KH_8 CHECK(NGDK > NGSINH);

ALTER TABLE CUAHANG1.KHACHHANG ADD CONSTRAINT CHECK_KH_9 CHECK(CAPDO IN('VVIP', 'VIP', 'Thuong'));

- Phương thức thanh toán hóa đơn là ‘Tien mat’ hay ‘Ngan hang’

ALTER TABLE CUAHANG1.HD ADD CONSTRAINT CHECK_HD_10 CHECK(PTTHANHTOAN

IN ('Ngan hang', 'Tien mat'));

- Số lượng s n ph m trong chi ti ả ẩ ết hóa đơn phả ừ i t 1 tr ở lên

ALTER TABLE CUAHANG1.CTHD ADD CONSTRAINT CHECK_CTHD_11 CHECK(SL >= 1);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP04', 'Lac tay ruby do', '28/06/2019','PNJ', 30000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP05', 'Day chuyen ngoc trai den', '29/06/2019','Tiffany and Co', 19500000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP06', 'Khuyen tai ngoc bich', '27/07/2019','Tiffany and Co', 120000000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP07', 'Khuyen tai Swarovski', '27/07/2019','Swarovski', 120000000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP08', 'Day chuyen vang trang', '25/08/2019','PNJ', 25000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP09', 'Lac tay ngoc trai tim', '25/08/2019','Doji', 25000000);

Trang 9

9 –

('SP10', 'Nhan ngoc trai den', '26/08/2019','Tiffany and Co', 12000 000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP11', 'Cai ao dinh Swarovski', '01/09/2019','Swarovski', 20000000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP12', 'Nhan vang trang', '02/09/2019','Doji', 120000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP13', 'Day chuyen vang beige 18K', '03/09/2019','Tiffany and Co', 25000000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP14', 'Khuyen tai vang trang', '04/09/2019','Tiffany and Co', 23000000); INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP15', 'Nhan Swarovski', '28/09/2019','Swarovski', 50000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP16', 'Day chuyen pha le', '11/10/2019','Doji', 25000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP17', 'Bo trang suc vang trang', '25/10/2019','PNJ', 120000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP18', 'Day chuyen vang 9999', '29/10/2019','Doji', 25000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP19', 'Day chuyen dinh da cz', '29/10/2019','PNJ', 25000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP20', 'Bo trang suc vang trang dinh kim cuong nhan tao', '20/11/2019','Tiffany and Co', 70000000);

INSERT INTO CUAHANG1.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP21', 'Bo trang suc vang beige dinh kim cuong nhan tao', '15/12/2019','Tiffany and Co', 80000000);

o NHANVIEN TABLE

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV01', 'Ho Trong Khang', 'Nam','09/10/1999','Binh Dinh','20/10/2019', 'Quan ly', '0858595208', 12000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV18', 'Nguyen Thi Thuy Nga', 'Nu','12/03/2001','Dak Lak','29/07/2021', 'Quan ly', '0943058578', 9000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV13', 'Le Kim Thuy', 'Nu','04/10/1997','Ca Mau','29/12/2020', 'Nhan vien', '0982348989', 8000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV06', 'Tran Kim Dung', 'Nu','19/02/2001','Ha Noi','25/09/2020', 'Nhan vien', '0928471948', 7000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV12', 'Tran Van Son',

Trang 10

10 –

'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV09', 'Nguyen Ngoc Nhi', 'Nu','09/09/2001','Ca Mau','30/11/2020', 'Nhan vien', '0369872699', 6000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV15', 'To Huu Tri', 'Nam','10/12/2002','Ca Mau','19/02/2021', 'Thu ngan', '0389824566', 6000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV08', 'Le My Nhan', 'Nu','22/12/2000','Ca Mau','20/11/2020', 'Nhan vien', '0935563686', 5200000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV02', 'Trinh Tri Bang', 'Nam','01/07/2001','Can Tho','20/10/2019', 'Thu ngan', '0938746388', 5000000, 'CN01');

INSERT INTO CUAHANG1.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV16', 'Tran Thi Hoa', 'Nu','01/09/2000','Hai Phong','19/02/2021', 'Nhan vien', '0234632672', 4000000, 'CN01');

Trang 11

11 –

INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH02', 'Truong Nguyen Thanh Tu', 'Nu','Quang Nam', '0936275837', '06/06/1998', 0, '09/04/2020', 'VVIP', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH05', 'Nguyen Thi Nhu Y', 'Nu','Hau Giang', '0998723490', '04/09/1999', 0, '31/08/2020', 'VVIP', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH07', 'Le Thi Mai Thanh', 'Nu','Soc Trang', '0968745265', '08/10/2000', 165, '22/10/2020', 'Thuong', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH09', 'Le Minh Giang', 'Nam','Tien Giang', '0986724189', '27/08/2002', 69, '29/10/2020', 'Thuong', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH10', 'Nguyen Hoang Ngoc Hanh', 'Nu','Vinh Long', '0912345678', '11/11/2002', 0, '22/11/2020', 'VVIP', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH12', 'Nguyen Thi Nhu Van', 'Nu','Vung Tau', '093689898', '06/07/2003', 0, '24/12/2020', 'VVIP', 'CN01');

INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH13', 'Nguyen Van Khang', 'Nam','Hai Phong', '0915572583', '19/02/2000', 0, '12/02/2021', 'VVIP', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH18', 'Bui Duy Nghia', 'Nam','Quang Ninh', '0936721188', '12/05/2001', 180, '09/09/2021', 'VIP', 'CN01'); INSERT INTO CUAHANG1.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH19', 'Nguyen Cam Tu', 'Nu','Tay Ninh', '0936781546', '04/02/2002', 36, '02/10/2021', 'Thuong', 'CN01');

Trang 12

12 –

DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH21', 'Ho Thi Hang', 'Nu','Quang Tri', '0984567830', '11/01/2002', 0, '11/11/2021', 'Thuong', 'CN01');

o TABLE HD

INSERT INTO CUAHANG1.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1004, '18/10/2022', 'KH19', 'NV13', 'CN01', 36000000, 'Ngan hang'); INSERT INTO CUAHANG1.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1007, '12/12/2022', 'KH07', 'NV06', 'CN01', 165000000, 'Ngan hang'); INSERT INTO CUAHANG1.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1008, '22/12/2022', 'KH09', 'NV12', 'CN01', 69500000, 'Ngan hang'); INSERT INTO CUAHANG1.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1010, '24/12/2022', 'KH18', 'NV13', 'CN01', 180000000, 'Ngan hang');

o TABLE CTHD

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1004, 'SP10', 3);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1005, 'SP17', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1006, 'SP06', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1006, 'SP07', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1007, 'SP03', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1007, 'SP02', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP05', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP08', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP09', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1009, 'SP11', 2);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1009, 'SP13', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1010, 'SP15', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1010, 'SP16', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1010, 'SP19', 1);

INSERT INTO CUAHANG1.CTHD (SOHD, MASP, SL) VALUES (1010, 'SP21', 1);

Trang 13

13 –

('SP03', 'Day chuyen dinh 10 vien kim cuong nhan tao', '10/06/2019','Doji', 120000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP04', 'Lac tay ruby do', '28/06/2019','PNJ', 30000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP05', 'Day chuyen ngoc trai den', '29/06/2019','Tiffany and Co', 19500000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP06', 'Khuyen tai ngoc bich', '27/07/2019','Tiffany and Co', 120000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP07', 'Khuyen tai Swarovski', '27/07/2019','Swarovski', 120000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP08', 'Day chuyen vang trang', '25/08/2019','PNJ', 25000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP09', 'Lac tay ngoc trai tim', '25/08/2019','Doji', 25000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP10', 'Nhan ngoc trai den', '26/08/2019','Tiffany and Co', 12000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP11', 'Cai ao dinh Swarovski', '01/09/2019','Swarovski', 20000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP12', 'Nhan vang trang', '02/09/2019','Doji', 120000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP13', 'Day chuyen vang beige 18K', '03/09/2019','Tiffany and Co', 25000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP14', 'Khuyen tai vang trang', '04/09/2019','Tiffany and Co', 23000000); INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP15', 'Nhan Swarovski', '28/09/2019','Swarovski', 50000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP16', 'Day chuyen pha le', '11/10/2019','Doji', 25000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP17', 'Bo trang suc vang trang', '25/10/2019','PNJ', 120000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP18', 'Day chuyen vang 9999', '29/10/2019','Doji', 25000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP19', 'Day chuyen dinh da cz', '29/10/2019','PNJ', 25000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP20', 'Bo trang suc vang trang dinh kim cuong nhan tao', '20/11/2019','Tiffany and Co', 70000000);

INSERT INTO CUAHANG2.TRANGSUC (MASP, TENSP, NGAYSX, NHANHIEU, GIATIEN) VALUES ('SP21', 'Bo trang suc vang beige dinh kim cuong nhan tao', '15/12/2019','Tiffany and Co', 80000000);

o NHANVIEN TABLE

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV03', 'Nguyen Minh Ngoc',

Trang 14

14 –

'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV11', 'Tran Thi Hoa', 'Nu','05/01/2002','Binh Dinh','27/12/2020', 'Thu ngan', '0944052974', 8000000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV19', 'Ngo Ngoc Hao', 'Nam','21/11/1998','Hai Phong','26/08/2021', 'Nhan vien', '0924626800',

7500000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV17', 'Ngo Gia Bao', 'Nam','04/02/1999','Ca Mau','29/03/2021', 'Nhan vien', '0735326439', 7500000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV10', 'Trinh Thu Thuy', 'Nu','29/02/2004','Can Tho','12/12/2020', 'Nhan vien', '0358925364', 7000000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV21', 'Ho Huu Thang', 'Nam','10/09/2000','Bien Hoa','26/12/2021', 'Nhan vien', NULL, 6500000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV05', 'Ho Quang Hieu', 'Nam','30/03/2003','Hai Phong','25/04/2020', 'Thu ngan', '0973618562', 6000000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV04', 'Le Huynh Lan Ha', 'Nu','05/03/2000','An Giang','15/02/2020', 'Nhan vien', '0823664648', 5500000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV14', 'Tran Thi Ngoc An', 'Nu','14/02/2002','Binh Dinh','05/02/2021', 'Nhan vien', NULL, 4900000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV20', 'Ho Viet Trung', 'Nam','01/01/2000','Ha Noi','21/12/2021', 'Nhan vien', '0913627334', 4900000, 'CN02');

INSERT INTO CUAHANG2.NHANVIEN (MANV, HOTEN, GIOITINH, NGSINH, DCHI, NGAYVL, CHUCVU, DTHOAI, LUONGCOBAN, MACN) VALUES ('NV07', 'Le Thuy An', 'Nu','29/05/2000','Ha Noi','09/10/2020', 'Nhan vien', '0729374822', 4000000, 'CN02');

Trang 15

15 –

Trang 16

16 –

o KHACHHANG TABLE

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH03', 'Do Kien Nam', 'Nam','Tra Vinh', '0957835647', '04/07/2000', 90, '08/06/2020', 'VIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH04', 'Trinh Duong Ngoc Tran', 'Nu','Quang Ngai', '0917482758', '07/07/1994', 0, '21/08/2020', 'VVIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH06', 'Nguyen Thi Ha', 'Nu','Ha Noi', '0926437658', '17/01/2000', 0, '05/09/2020', 'VVIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH08', 'Ngo Hai Dang', 'Nam','TP HCM', '0986648224', '12/05/1999', 0, '27/10/2020', 'Thuong', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH11', 'Le Duc Tuan', 'Nam','Hue', '0986735167', '10/04/2003', 150, '12/12/2020', 'VIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH14', 'Nguyen Duy', 'Nam','Can Tho', '0856233518', '09/10/2001', 215, '29/03/2021', 'VVIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH15', 'Le Minh Duc Hieu', 'Nam','TP HCM', '0927583675', '15/03/2000', 65, '08/07/2021', 'Thuong', 'CN02'); INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH16', 'Tran Duc Bo', 'Nam','TP HCM', '0937583657', '09/03/2001', 240, '15/07/2021', 'VVIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH17', 'Vo Dinh Van', 'Nam','Hue', '0994473868', '30/06/2001', 120, '09/08/2021', 'VIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH20', 'Le Minh Thu', 'Nu','Long Xuyen', '0987987654', '05/07/2000', 0, '09/10/2021', 'VIP', 'CN02');

INSERT INTO CUAHANG2.KHACHHANG (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) VALUES ('KH22', 'Nguyen Thi Thu Thuy', 'Nu','Long An', '0967839187', '02/01/2002', 0, '12/12/2021', 'Thuong', 'CN02');

o TABLE HD

INSERT INTO CUAHANG2.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1001, '02/09/2022', 'KH14', 'NV03', 'CN02', 215000000, 'Tien mat'); INSERT INTO CUAHANG2.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1002, '09/09/2022', 'KH03', 'NV19', 'CN02', 90000000, 'Ngan hang'); INSERT INTO CUAHANG2.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1003, '07/10/2022', 'KH11', 'NV17', 'CN02', 150000000, 'Tien mat'); INSERT INTO CUAHANG2.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1005, '09/11/2022', 'KH17', 'NV10', 'CN02', 120000000, 'Ngan hang'); INSERT INTO CUAHANG2.HD (SOHD, NGHD, MAKH, MANV, MACN, TONGTIEN, PTTHANHTOAN) VALUES (1006, '11/11/2022', 'KH16', 'NV03', 'CN02', 240000000, 'Ngan hang’);

Trang 17

17 –

VALUES (1009, '22/12/2022', 'KH15', 'NV03', 'CN02', 65000000, 'Tien mat');

o TABLE CTHD

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1001, 'SP01', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1001, 'SP07', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1001, 'SP20', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1002, 'SP12', 2);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1003, 'SP03', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1003, 'SP04', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1004, 'SP10', 3);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1005, 'SP17', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1006, 'SP06', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1006, 'SP07', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1007, 'SP03', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1007, 'SP02', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP05', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP08', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1008, 'SP09', 1);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1009, 'SP11', 2);

INSERT INTO CUAHANG2.CTHD (SOHD, MASP, SL) VALUES (1009, 'SP13', 1);

COMMIT;

1.3 Kiến trúc phân m ảnh :

1.3.1 Mô t phân mảnh

 KHO_QL, KHO_NV là phân mảnh dọc không dư thừa từ bảng KHOSANPHAM

 Phân mảnh ngang dẫn xuất KHOSANPHAM, NHANVIEN, KHACHHANG, HD, CTHD

 Quan hệ TRANGSUC nhân bản tại tất cả chi nhánh

1.3.2 Minh h a trên 2 chi nhánh

- Quan hệ CHINHANH phân mảnh ngang như sau:

- Quan hệ KHO_QL, KHO_NV phân mảnh dọc không dư thừa từ bảng KHOSANPHAM

CUAHANG1.KHOSANPHAM

Trang 18

18 –

- Quan hệ KHACHHANG phân mảnh ngang hỗn hợp

CUAHANG1.KHACHHANG = (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) (KHACHHANG MACN CUAHANG1.CHINHANH)

CUAHANG2.KHACHHANG = (MAKH, HOTEN, GIOITINH, DCHI, DTHOAI, NGSINH, DIEMTICHLUY, NGDK, CAPDO, MACN) (KHACHHANG MACN CUAHANG2.CHINHANH)

- Quan hệ TRANGSUC nhân bản tại tất cả các chi nhánh

1.4 Kiến trúc phân quy n

1.4.1 Mô t c u trúc phân quy n ả ấ ề

Chi nhánh 1: Có 3 quy n ề

GiamDoc: Xem được thông tin t t c các quan h chi nhánh 1, chi nhánh 2, Connect ấ ả ệ QuanLy: Xem được KHO_QL, HD, CTHD, NHANVIEN, KHACHHANG của chi nhánh 1, TRANGSUC

NhanVien: Xem được TRANGSUC, KHO_NV, HD, CTHD, KHACHHANG của chi nhánh 1, chi nh nh 2 á

Chi nhánh 2: Có 2 quy n ề

QuanLy: Xem được KHO_QL, HD, CTHD, NHANVIEN, KHACHHANG của chi nhánh 2, TRANGSUC

Trang 19

19 –

NhanVien: Xem được TRANGSUC, KHO_NV, HD, CTHD, KHACHHANG của chi nhánh 1, chi nh nh 2 á

1.4.2 Minh h a

1.4.2.1 T ạo user ban đầ u: Chi nhánh

ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE;

CREATE USER CUAHANG1 IDENTIFIED BY

abc123;

GRANT CONNECT, DBA TO CUAHANG1;

CREATE USER CUAHANG2 IDENTIFIED BY abc123;

GRANT CONNECT, DBA TO CUAHANG2;

1.4.2.2 T o role

 Chi nhánh 1

CREATE ROLE r_quanly1;

CREATE ROLE r_nhanvien1;

 Chi nhánh 2

CREATE ROLE r_quanly2;

CREATE ROLE r_nhanvien2;

1.4.2.3 Phân quy n:

 Chi nhánh 1

GRANT SELECT ON CUAHANG1.KHO_QL TO r_quanly1;

GRANT SELECT ON CUAHANG1.HD TO r_quanly1;

GRANT SELECT ON CUAHANG1.CTHD TO r_quanly1;

GRANT SELECT ON CUAHANG1.NHANVIEN TO r_quanly1;

GRANT SELECT ON CUAHANG1.KHACHHANG TO r_quanly1;

GRANT SELECT ON CUAHANG1.TRANGSUC TO r_quanly1;

 Chi nhánh 2

GRANT SELECT ON CUAHANG2.KHO_QL TO r_quanly2;

GRANT SELECT ON CUAHANG2.HD TO r_quanly2;

GRANT SELECT ON CUAHANG2.CTHD TO r_quanly2;

GRANT SELECT ON CUAHANG2.NHANVIEN TO r_quanly2;

GRANT SELECT ON CUAHANG2.KHACHHANG TO r_quanly2;

GRANT SELECT ON CUAHANG2.TRANGSUC TO r_quanly2;

 Phân quyền nhân viên:

 Chi nhánh 1

GRANT SELECT ON CUAHANG1.KHO_NV TO r_nhanvien1;

GRANT SELECT ON CUAHANG1.HD TO r_nhanvien1;

GRANT SELECT ON CUAHANG1.CTHD TO r_nhanvien1;

Trang 20

20 –

GRANT SELECT ON CUAHANG1.TRANGSUC TO r_nhanvien1;

 Chi nhánh 2

GRANT SELECT ON CUAHANG2.KHO_NV TO r_nhanvien2;

GRANT SELECT ON CUAHANG2.HD TO r_nhanvien2;

GRANT SELECT ON CUAHANG2.CTHD TO r_nhanvien2;

GRANT SELECT ON CUAHANG2.KHACHHANG TO r_nhanvien2;

GRANT SELECT ON CUAHANG2.TRANGSUC TO r_nhanvien2;

 Phân quyền giám đc

GRANT CREATE SESSION TO r_giamdoc;

1.4.2.4 T o các user còn l i ạ ạ

 Tạo user Giamdoc

CREATE USER giamdoc IDENTIFIED BY abc123;

GRANT CONNECT, DBA TO giamdoc;

 Chi nhánh 1

CREATE USER nhanvien1 IDENTIFIED BY abc123;

GRANT r_nhanvien1 TO nhanvien1;

GRANT CONNECT, CREATE SESSION TO nhanvien1;

CREATE USER quanly1 IDENTIFIED BY abc123;

GRANT r_quanly1 TO quanly1;

GRANT CONNECT, CREATE SESSION TO quanly1;

 Chi nhánh 2

CREATE USER nhanvien2 IDENTIFIED BY abc123;

GRANT r_nhanvien2 TO nhanvien2;

GRANT CONNECT, CREATE SESSION TO nhanvien_2;

CREATE USER quanly2 IDENTIFIED BY abc123;

GRANT r_quanly2 TO quanly2;

GRANT CONNECT, CREATE SESSION TO quanly_2;

Trang 21

21 –

SELECT TS.MASP, TENSP, NHANHIEU

FROM CUAHANG1.TRANGSUC TS, CUAHANG1.KHO_NV KNV

WHERE TS.MASP = KNV.MASP

AND TINHTRANG = 'Het Hang' AND GIATIEN <= 25000000;

1.5.2 Câu truy v ấn 2:

là ‘Con Hang’ ở chi nhánh 1 và nh ng ữ trang s ức ‘Het Hang’ chi nhánh 2 ở

CONNECT nhanvien1/abc123;

SELECT TS1.MASP, TENSP, MACN, TINHTRANG

FROM CUAHANG1.TRANGSUC TS1, CUAHANG1.KHO_NV KNV1

WHERE TS1.MASP = KNV1.MASP AND TINHTRANG = 'Con Hang'

UNION

SELECT TS2.MASP, TENSP, MACN, TINHTRANG

FROM CUAHANG2.TRANGSUC@NV2 TS2, CUAHANG2.KHO_NV@NV2 KNV2

WHERE TS2.MASP = KNV2.MASP AND TINHTRANG = 'Het Hang'

ORDER BY MACN, MASP;

Trang 22

22 –

1.5.3 Câu truy v ấn 3:

Tài kho n nhân v ả iên: Thống kê nh ng trang s c (MASP,TENSP) có m ữ ứ ặt ở tấ ả t c các chi

CONNECT nhanvien1/abc123;

SELECT MACN, TS1.MASP, TENSP

FROM CUAHANG1.KHO_NV KNV1, CUAHANG1.TRANGSUC TS1

WHERE TS1.MASP = KNV1.MASP AND TINHTRANG = 'Con Hang'

UNION

SELECT MACN, TS2.MASP, TENSP

FROM CUAHANG2.KHO_NV@NV2 KNV2, CUAHANG2.TRANGSUC@NV2 TS2

WHERE TS2.MASP = KNV2.MASP AND TINHTRANG = 'Con Hang';

1.5.4 Câu truy v ấn 4:

Tài kho n nhân viên: Tính t ng s ả ổ ố lượng trang s c có TINHTRANG là "Con Hang" ứ

ở cả 2 chi nhánh

CONNECT nhanvien1/abc123;

SELECT COUNT(TS1.MASP) AS SLCONHANG, MACN

FROM CUAHANG1.TRANGSUC TS1, CUAHANG1.KHO_NV KNV1

WHERE TS1.MASP = KNV1.MASP AND TINHTRANG = 'Con Hang'

GROUP BY MACN

UNION

SELECT COUNT(TS2.MASP) AS SLCONHANG, MACN

FROM CUAHANG2.TRANGSUC@NV2 TS2, CUAHANG2.KHO_NV@NV2 KNV2

WHERE TS2.MASP = KNV2.MASP AND TINHTRANG = 'Con Hang'

GROUP BY MACN

Ngày đăng: 17/08/2023, 10:30

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w