Tạo bảng quảng lý bán hàng với SQL
Bài tập quản lý bán hàng SQL có lời giải.
use master
CREATE DATABASE QLBH
GO
USE QLBH
/* Tạo bảng */
CREATE TABLE DMKhach
(
MaKhach char(4) PRIMARY KEY,
TenKhach nvarchar(100) NOT NULL,
DiaChi nvarchar(100) NOT NULL,
DienThoai nvarchar(20) DEFAULT 'Chưa có'
)
CREATE TABLE DMHang
(
MaHang char(4) PRIMARY KEY,
TenHang nvarchar(100) NOT NULL,
DVT nvarchar(10) DEFAULT ''
)
CREATE TABLE HoaDonBan
(
SoHD char(4) PRIMARY KEY,
MaKhach char(4) NOT NULL,
NgayHD DATE DEFAULT GETDATE(),
DienGiai nvarchar(100) NULL
)
CREATE TABLE ChiTietHoaDon
(
SoHD char(4) NOT NULL,
MaHang char(4) NOT NULL,
SoLuong int NOT NULL,
DonGia MONEY NOT NULL
CONSTRAINT KC_ChiTietHoaDon PRIMARY KEY (SoHD,MaHang)
)
/* Tạo liên kết bảng */
ALTER TABLE HoaDonBan
ADD CONSTRAINT KN_HoaDonBan FOREIGN KEY (MaKhach) REFERENCES DMKhach(MaKhach)
ALTER TABLE ChiTietHoaDon
ADD CONSTRAINT KN_ChiTietHoaDon_1 FOREIGN KEY (SoHD) REFERENCES HoaDonBan(SoHD),
CONSTRAINT KN_ChiTietHoaDon_2 FOREIGN KEY (MaHang) REFERENCES DMHang(MaHang)
/* Chèn dữ liệu vào các bảng */
INSERT INTO DMKhach
VALUES
('K01','Chu Xuân Linh','Quảng Ninh','0985483xxx'),
('K02','Ngô Doãn Tình','Hải Dương','0974768xxx'),
('K03','Phạm Xuân Tú','Thái Nguyên','01662183xxx'),
('K04','Trần Văn Cương','Hải Dương','01649647xxx'),
('K05','Dương Xuân Tùng','Bắc Giang','0919150xxx')
INSERT INTO DMHang
VALUES
('B01','Bút Bi','Chiếc'),
('B02','Bút Chì','Chiếc'),
('B03','Bút Mực','Chiếc')
INSERT INTO HoaDonBan
VALUES
('HD01','K01',convert(varchar, '07-03-2009', 101),''),
('HD02','K02',convert(varchar, '07-17-2009', 101),''),
('HD03','K05',convert(varchar, '08-08-2009', 101),''),
('HD04','K03',convert(varchar, '08-28-2009', 101),''),
('HD05','K01',convert(varchar, '09-17-2009', 101),''),
('HD06','K04',convert(varchar, '10-20-2009', 101),'')
INSERT INTO ChiTietHoaDon
VALUES
('HD01','B01',10,'5000'),
('HD02','B02',5,'7000'),
('HD03','B02',6,'7000'),
('HD04','B03',7,'1000'),
('HD05','B01',8,'5000'),
('HD06','B02',9,'7000')
Post a Comment