-- Bảng Nhà Xuất Bản CREATE TABLE NhaXuatBan ( TenNXB VARCHAR(20) NOT NULL PRIMARY KEY, DiaChiNXB VARCHAR(50), SDTNXB VARCHAR(10) ); -- Bảng Tựa Sách CREATE TABLE TuaSach ( TuaSachID SMALLINT NOT NULL PRIMARY KEY, TenTuaSach VARCHAR(30), TenNXB VARCHAR(20) ); -- Bảng Thư Viện CREATE TABLE ThuVien ( MaThuVien SMALLINT NOT NULL PRIMARY KEY, TenThuVien VARCHAR(30), DiaChi VARCHAR(50) ); -- Bảng Sách Tác Giả CREATE TABLE SachTacGia ( TuaSachID SMALLINT NOT NULL, TenTacGia VARCHAR(20) NOT NULL, PRIMARY KEY (TuaSachID, TenTacGia) ); -- Bảng Độc Giả CREATE TABLE DocGia ( SoTheDG SMALLINT NOT NULL PRIMARY KEY, TenDG VARCHAR(20), DiaChiDG VARCHAR(30), SDTDG VARCHAR(10) ); -- Bảng Cuốn Sách CREATE TABLE CuonSach ( MaTuaSach SMALLINT NOT NULL, MaThuVien SMALLINT NOT NULL, SoLuong SMALLINT, PRIMARY KEY (MaTuaSach, MaThuVien) ); -- Bảng Mượn Sách CREATE TABLE MuonSach ( MaTuaSach SMALLINT NOT NULL, MaThuVien SMALLINT NOT NULL, SoTheDG SMALLINT NOT NULL, NgayMuon DATETIME, NgayTra DATETIME, PRIMARY KEY (MaTuaSach, MaThuVien, SoTheDG) ); -- Dữ liệu bảng Nhà Xuất Bản INSERT INTO NhaXuatBan (TenNXB, DiaChiNXB, SDTNXB) VALUES ('FAHASA', '60-62 Lê Lợi, Q. 1', '38225798'), ('ALPHABOOK', '282 Nguyễn Huy Tưởng, Q. Thanh Xuân', '38456936'), ('TRIVIET', '11 Nguyễn Thị Minh Khai', '38227979'); -- Dữ liệu bảng Tựa Sách INSERT INTO TuaSach (TuaSachID, TenTuaSach, TenNXB) VALUES (1, 'Muôn kiếp nhân sinh', 'TRIVIET'), (2, 'Trở về xứ tuyết', 'TRIVIET'), (3, '25 thuật đắc nhân tâm', 'ALPHABOOK'), (4, 'Mindmapping', 'ALPHABOOK'), (5, 'Dịch vụ mạng Windows', 'FAHASA'), (6, 'Quản trị Windows Server', 'FAHASA'); -- Dữ liệu bảng Thư Viện INSERT INTO ThuVien (MaThuVien, TenThuVien, DiaChi) VALUES (1, 'Thư viện Benjamin', '8 Nguyễn Văn Tráng, Q. 1'), (2, 'Thư viện Carnegie', '7/1 Thành Thái, Q. 10'); -- Dữ liệu bảng Sách Tác Giả INSERT INTO SachTacGia (TuaSachID, TenTacGia) VALUES (1, 'Nguyên Phong'), (2, 'Nguyên Phong'), (3, 'John C. Maxwell'), (4, 'Joyce Wycoff'), (5, 'Tiêu Đông Nhơn'), (6, 'Trần Văn Thành'); -- Dữ liệu bảng Độc Giả INSERT INTO DocGia (SoTheDG, TenDG, DiaChiDG, SDTDG) VALUES (1, 'Nguyễn Hòa Thân', '10 Hai Bà Trưng', '0913123456'), (2, 'Trần Lưu Dung', '20 Trần Hưng Đạo', '0910135468'), (3, 'Lê Khanh Hy', '30 Nguyễn Huệ', '0913468123'); -- Dữ liệu bảng Cuốn Sách INSERT INTO CuonSach (MaTuaSach, MaThuVien, SoLuong) VALUES (1, 1, 10), (1, 2, 10), (2, 1, 10), (2, 2, 10), (3, 1, 10), (3, 2, 10), (4, 1, 10), (4, 2, 10), (5, 1, 10), (5, 2, 10), (6, 2, 10), (6, 1, 10); -- Dữ liệu bảng Mượn Sách INSERT INTO MuonSach (MaTuaSach, MaThuVien, SoTheDG, NgayMuon, NgayTra) VALUES (1, 1, 1, '2023-12-15', NULL), (1, 2, 1, '2023-11-24', NULL), (2, 1, 2, '2023-12-15', NULL), (2, 2, 2, '2023-11-24', NULL), (3, 1, 3, '2023-12-15', NULL), (3, 2, 3, '2023-11-24', NULL), (4, 1, 1, '2023-12-15', NULL), (4, 2, 1, '2023-11-24', NULL), (5, 1, 2, '2023-12-15', NULL), (5, 2, 2, '2023-11-24', NULL), (6, 1, 3, '2023-12-15', NULL), (6, 2, 3, '2023-11-19', NULL); -- Thêm khóa ngoại cho bảng TuaSach tham chiếu đến bảng NhaXuatBan ALTER TABLE TuaSach ADD CONSTRAINT FK_TuaSach_NhaXuatBan FOREIGN KEY (TenNXB) REFERENCES NhaXuatBan(TenNXB); -- Thêm khóa ngoại cho bảng SachTacGia tham chiếu đến bảng TuaSach ALTER TABLE SachTacGia ADD CONSTRAINT FK_SachTacGia_TuaSach FOREIGN KEY (TuaSachID) REFERENCES TuaSach(TuaSachID); -- Thêm khóa ngoại cho bảng CuonSach tham chiếu đến bảng TuaSach ALTER TABLE CuonSach ADD CONSTRAINT FK_CuonSach_TuaSach FOREIGN KEY (MaTuaSach) REFERENCES TuaSach(TuaSachID); -- Thêm khóa ngoại cho bảng CuonSach tham chiếu đến bảng ThuVien ALTER TABLE CuonSach ADD CONSTRAINT FK_CuonSach_ThuVien FOREIGN KEY (MaThuVien) REFERENCES ThuVien(MaThuVien); -- Thêm khóa ngoại cho bảng MuonSach tham chiếu đến bảng CuonSach ALTER TABLE MuonSach ADD CONSTRAINT FK_MuonSach_CuonSach FOREIGN KEY (MaTuaSach, MaThuVien) REFERENCES CuonSach(MaTuaSach, MaThuVien); -- Thêm khóa ngoại cho bảng MuonSach tham chiếu đến bảng DocGia ALTER TABLE MuonSach ADD CONSTRAINT FK_MuonSach_DocGia FOREIGN KEY (SoTheDG) REFERENCES DocGia(SoTheDG);