CHƯƠNG 4: XÂY DỰNG HỆ THỐNG
4.1.3 Xác định bảng và thuộc tính các bản
Ban ( Bàn )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 MaSoBan Mã số bàn Varchar[50] Khóa chính
2 Sochoban Số chỗ bàn Varchar[50] NULL
ChiTietDonHang ( Chi tiết đơn hàng)
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 SoDonHang Số đơn hàng Varchar[50] Khóa chính
2 MaHangHoa Mã hàng hoá Varchar[50] Khóa chính
3 SoLuong Số lượng int NULL
4 DonGia Đơn giá float NULL
ChiTietGoiBan ( Chi tiết gọi bàn )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 STT Số thứ tự int Khóa chính
2 MaNuoc Mã nước Varchar[50] Khóa chính
3 SL Số lượng int NULL
ChiTietHoaDon ( Chi tiết hoá đơn )
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 SoHoaDon Số hoá đơn int Khóa chính
2 STT Số thứ tự int Khóa chính
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 SoDonHang Số đơn hàng Varchar[50] Khóa chính
2 MaNCC Mã nhà cung cấp Varchar[50] NULL
3 NgayLap Ngày lập date NULL
4 NgayGiao Ngày giao date NULL
Goi Ban ( Gọi bàn )
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 STT Số thứ tự int Khóa chính
2 MaSoBan Mã số bàn Varchar[50] NULL
3 TongTienBan Tổng tiền bàn float NULL
HangHoa ( Hàng hoá )
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 MaHangHoa Mã hàng hoá Varchar[50] Khóa chính
2 TenHangHoa Tên hàng hoá Varchar[50] NULL
3 DonViTinh Đơn vị tính Varchar[50] NULL
HoaDonTinhTien ( Hoá đơn tính tiền )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 SoHoaDon Số hoá đơn Varchar[50] Khóa chính
2 NgayLap Ngày lập date NULL
3 MaNV Mã Nhân viên Varchar[50] NULL
4 MaKH Mã khách hàng Varchar[50] NULL
5 TriGiaHoaDon Trị giá hoá đơn float NULL
KhachHang ( Khách Hàng )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 MaKH Mã khách hàng Varchar[50] Khóa chính
2 SoHoaDon Số hoá đơn Varchar[50] NULL
3 MaSoBan Đơn vị tính Varchar[50] NULL
LoaiNuoc( Loại nước )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 MaLoai Mã loại Varchar[50] Khóa chính
NhaCC ( Nhà cung cấp )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 MaNCC Mã nhà cung cấp Varchar[50] Khóa chính
2 TenNCC Tên nhà cung cấp Varchar[50] NULL
3 DiaChi Địa chỉ Varchar[50] NULL
4 SDT Số điện thoại int NULL
NhanVien ( Nhân viên )
STT TÊN THUỘCTÍNH TÍNH
DIỄN GIẢI KIỂU Ràng
buộc
1 MaNV Mã nhà cung cấp Varchar[50] Khóa chính
2 TenNV Tên nhân viên Varchar[50] NULL
3 NgaySinh Ngày sinh date NULL
4 DiaChi Địa chỉ Varchar[50] NULL
5 NgayVaoLam Ngày vào làm date NULL
6 SoDonHang Số đơn hàng Varchar[50] NULL
7 SoHoaDon Số hoá đơn Varchar[50] NULL
NuocUong ( Nước uống )
STT TÊN THUỘC
TÍNH DIỄN GIẢI KIỂU buộcRàng
1 MaNuoc Mã nước Varchar[50] Khóa chính
2 MaLoai Mã loại Varchar[50] NULL
3 TenNuoc Tên nước Varchar[50] NULL
4 DonGia Đơn giá float NULL
IV. KẾT QUẢ
5.1 Câu lệnh tạo bảng
a) Tạo bảng Ban
CREATE TABLE [dbo].[Ban](
[MaSoBan] [varchar](50) NOT NULL PRIMARY KEY, [SoChoban] [int] NULL,
b) Tạo bảng ChiTietDonHang
CREATE TABLE [dbo].[ChiTietDonHang](
[SoDonHang] [varchar](50) NOT NULL PRIMARY KEY, [MaHangHoa] [varchar](50) NOT NULL PRIMARY KEY,
[SoLuong] [int] NULL, [DonGia] [float] NULL, c) Tạo bảng ChiTietGoiBan
CREATE TABLE [dbo].[ChiTietGoiBan]( [STT] [int] NOT NULL PRIMARY KEY,
[MaNuoc] [varchar](50) NOT NULL PRIMARY KEY, [SL] [int] NULL,
a) Tạo bảng ChiTietHoaDon
CREATE TABLE [dbo].[ChiTietHoaDon](
[SoHoaDon] [varchar](50) NOT NULL PRIMARY KEY, [STT] [int] NOT NULL PRIMARY KEY,
b) Tạo bảng DonHang
CREATE TABLE [dbo].[DonHang](
[SoDonHang] [varchar](50) NOT NULL PRIMARY KEY, [MaNCC] [varchar](50) NULL,
[NgayLap] [date] NULL, [NgayGiao] [date] NULL, c) Tạo bảng Goi Ban
CREATE TABLE [dbo].[Goi Ban](
[STT] [int] NOT NULL PRIMARY KEY, [MaSoBan] [varchar](50) NULL, [TongTienBan] [float] NULL, d) Tạo bảng HangHoa
CREATE TABLE [dbo].[HangHoa](
[MaHangHoa] [varchar](50) NOT NULL PRIMARY KEY, [TenHangHoa] [varchar](50) NULL,
[DonViTinh] [varchar](50) NULL, e) Tạo bảng HoaDonTinhTien
CREATE TABLE [dbo].[HoaDonTinhTien](
[SoHoaDon] [varchar](50) NOT NULL PRIMARY KEY, [NgayLap] [date] NULL,
[MaNV] [varchar](50) NULL, [MaKH] [varchar](50) NULL, [TriGiaHoaDon] [float] NULL, f) Tạo bảng KhachHang
[MaKH] [varchar](50) NOT NULL PRIMARY KEY, [SoHoaDon] [varchar](50) NULL,
[MaSoBan] [varchar](50) NULL, G) Tạo bảng LoaiNuoc
CREATE TABLE [dbo].[LoaiNuoc](
[MaLoai] [varchar](50) NOT NULL PRIMARY KEY, [TenLoai] [varchar](50) NULL,
h) Tạo bảng NhaCC
CREATE TABLE [dbo].[NhaCC](
[MaNCC] [varchar](50) NOT NULL PRIMARY KEY, [TenNCC] [varchar](50) NULL,
[DiaChi] [varchar](50) NULL, [SDT] [int] NULL,
i) Tạo bảng NhanVien
CREATE TABLE [dbo].[NhanVien](
[MaNV] [varchar](50) NOT NULL PRIMARY KEY, [TenNV] [varchar](50) NULL,
[NgaySinh] [date] NULL, [DiaChi] [varchar](50) NULL, [NgayVaoLam] [date] NULL, [SoDonHang] [varchar](50) NULL, [SoHoaDon] [varchar](50) NULL, j) Tạo bảng NuocUong
CREATE TABLE [dbo].[NuocUong](
[MaNuoc] [varchar](50) NOT NULL PRIMARY KEY, [MaLoai] [varchar](50) NOT NULL PRIMARY KEY, [TenNuoc] [varchar](50) NULL,
[DonGia] [float] NULL,
5.2 Câu lệnh tạo khóa ngoại
ALTER TABLE [dbo] [ChiTietDonHang] . WITH CHECK ADD CONSTRAINT
[FK_ChiTietDonHang_DonHang] FOREIGNKEY([SoDonHang])
REFERENCES [dbo].[DonHang] ([SoDonHang])
ALTER TABLE [dbo] [ChiTietDonHang] . CHECK CONSTRAINT [FK_ChiTietDonHang_DonHang] ALTER TABLE [dbo] [ChiTietDonHang] . WITH CHECK ADD CONSTRAINT
[FK_ChiTietDonHang_HangHoa] FOREIGNKEY([MaHangHoa])
REFERENCES [dbo].[HangHoa] ([MaHangHoa])
ALTER TABLE [dbo] [ChiTietDonHang] . CHECK CONSTRAINT [FK_ChiTietDonHang_HangHoa]
ALTER TABLE [dbo] [ChiTietGoiBan] . WITH CHECK ADD CONSTRAINT [FK_ChiTietGoiBan_Goi Ban] FOREIGN KEY([STT])
ALTER TABLE [dbo] [ChiTietGoiBan] . CHECK CONSTRAINT [FK_ChiTietGoiBan_Goi Ban]
ALTER TABLE [dbo] [ChiTietGoiBan] . WITH CHECK ADD CONSTRAINT [FK_ChiTietGoiBan_NuocUong] FOREIGN KEY([MaNuoc])
REFERENCES [dbo].[NuocUong] ([MaNuoc])
ALTER TABLE [dbo] [ChiTietGoiBan] . CHECK CONSTRAINT [FK_ChiTietGoiBan_NuocUong] ALTER TABLE [dbo] [ChiTietHoaDon] . WITH CHECK ADD CONSTRAINT
[FK_ChiTietHoaDon_HoaDonTinhTien] FOREIGN KEY([SoHoaDon])
REFERENCES [dbo].[HoaDonTinhTien] ([SoHoaDon])
ALTER TABLE [dbo] [ChiTietHoaDon] . CHECK CONSTRAINT [FK_ChiTietHoaDon_HoaDonTinhTien] ALTER TABLE [dbo] [DonHang] . WITH CHECK ADD CONSTRAINT [FK_DonHang_NhaCC] FOREIGN KEY([MaNCC])
REFERENCES [dbo].[NhaCC] ([MaNCC])
ALTER TABLE [dbo] [DonHang] . CHECK CONSTRAINT [FK_DonHang_NhaCC]
ALTER TABLE [dbo] [Goi Ban] . WITH CHECK ADD CONSTRAINT [FK_Goi Ban_Ban] FOREIGN KEY([MaSoBan])
REFERENCES [dbo].[Ban] ([MaSoBan])
ALTER TABLE [dbo] [Goi Ban] . CHECK CONSTRAINT [FK_Goi Ban_Ban] ALTER TABLE [dbo] [HoaDonTinhTien] . WITH CHECK ADD CONSTRAINT [FK_HoaDonTinhTien_KhachHang] FOREIGN KEY([MaKH])
REFERENCES [dbo].[KhachHang] ([MaKH])
ALTER TABLE [dbo] [HoaDonTinhTien] . CHECK CONSTRAINT [FK_HoaDonTinhTien_KhachHang] ALTER TABLE [dbo] [HoaDonTinhTien] . WITH CHECK ADD CONSTRAINT
[FK_HoaDonTinhTien_NhanVien] FOREIGN KEY([MaNV])
REFERENCES [dbo].[NhanVien] ([MaNV])
ALTER TABLE [dbo] [HoaDonTinhTien] . CHECK CONSTRAINT [FK_HoaDonTinhTien_NhanVien] ALTER TABLE [dbo] [KhachHang] . WITH CHECK ADD CONSTRAINT [FK_KhachHang_Ban] FOREIGN KEY([MaSoBan])
REFERENCES [dbo].[Ban] ([MaSoBan])
ALTER TABLE [dbo] [KhachHang] . CHECK CONSTRAINT [FK_KhachHang_Ban]
ALTER TABLE [dbo] [KhachHang] . WITH CHECK ADD CONSTRAINT [FK_KhachHang_HoaDonTinhTien1] FOREIGN KEY([SoHoaDon])
REFERENCES [dbo].[HoaDonTinhTien] ([SoHoaDon])
ALTER TABLE [dbo] [KhachHang] . CHECK CONSTRAINT [FK_KhachHang_HoaDonTinhTien1] ALTER TABLE [dbo] [NhanVien] . WITH CHECK ADD CONSTRAINT [FK_NhanVien_DonHang] FOREIGN KEY([SoDonHang])
REFERENCES [dbo].[DonHang] ([SoDonHang])
ALTER TABLE [dbo] [NhanVien] . CHECK CONSTRAINT [FK_NhanVien_DonHang]
ALTER TABLE [dbo] [NuocUong] . WITH CHECK ADD CONSTRAINT [FK_NuocUong_LoaiNuoc] FOREIGN KEY([MaLoai])
REFERENCES [dbo].[LoaiNuoc] ([MaLoai])
ALTER TABLE [dbo] [NuocUong] . CHECK CONSTRAINT [FK_NuocUong_LoaiNuoc]