CSDL
CSDL
go
use QLDUAN
-- TẠO BẢNG PHÒNG BAN
create table PHONGBAN (
MaPB int constraint PB_MaPB_PK primary key,
TenPB varchar(10) constraint PB_TenPB_UQ unique,
TrPhong char(9) ,
NgNhanChuc datetime default (GetDate())
)
--TẠO BẢNG NHÂN VIÊN
CREATE TABLE NHANVIEN (
MaNV char(9) constraint NV_MaNV_PK primary key,
Ho varchar(15) not null,
TenDem varchar(15),
Ten varchar(15) not null,
NgSinh datetime,
DiaChi varchar(50),
GTinh char(3) constraint NV_GTinh_CK check ( GTinh in ('Nam','Nu')),
Luong int,
MaGSat char(9) constraint NV_MaGSat_FK foreign key (MaGSat) references
NHANVIEN(MaNV),
Phong int constraint NV_Phong_FK foreign key (Phong) references PHONGBAN(MaPB)
)
--TẠO BẢNG DỰ ÁN
create table DUAN(
MaDA int constraint DA_MaDA_PK primary key,
TenDA varchar(15) not null,
DiaDiem varchar(15),
PhongQL int constraint DA_PhongQL_FK foreign key (PhongQL) references
PHONGBAN(MaPB)
)
-- TAO BANG PHAN CONG
create table PHANCONG(
MaNV char(9) not null,
MaDA int not null,
SoGio decimal(3,1)
constraint PC_MaNV_MaDA_PK primary key (MaNV,MaDA),
constraint PC_MaNV_FK foreign key (MaNV) references NHANVIEN(MaNV),
constraint PC_MaDA_FK foreign key (MaDA) references DUAN(MaDA)
)
-- TAO BANG THANNHAN
create table THANNHAN(
MaNV char(9) not null,
TenTN char(15) not null,
GTinh char(3) constraint TN_GTinh_CK check (GTinh in ('Nam','Nu')),
NgSinh datetime,
QuanHe varchar(10),
constraint TN_MaNV_TenTN_PK primary key (MaNV,TenTN),
constraint TN_MaNV_FK foreign key (MaNV) references NHANVIEN(MaNV)
)
--TAO BANG DIADIEM_PHONG
Create table DIADIEM_PHONG(
MaPB int not null,
DiaDiem varchar(15) not null,
constraint DD_MaPB_DiaDiem_PK primary key (MaPB,DiaDiem),
constraint DD_MaPB_FK foreign key (MaPB) references PHONGBAN(MaPB)
)
alter table PHONGBAN
add constraint PB_TrPhong_FK foreign key (TrPhong) references NHANVIEN(MaNV)