我正在設計一個SQL數據庫,它有兩個需要'manager_id'的表。 '員工'表和'設施'表。由於經理被視爲員工,我不確定是否應該有單獨的「經理」表或將其整合到「員工」表中。我是SQL新手,不確定這種情況。這是我到目前爲止的代碼:我應該分開表格還是整合數據?
CREATE TABLE Employees (
emp_id NUMBER(5) NOT NULL,
emp_name VARCHAR2(20) NOT NULL,
emp_add1 VARCHAR2(30) NOT NULL,
emp_add2 VARCHAR2(30) NOT NULL,
emp_add3 VARCHAR2(30),
emp_town VARCHAR2(30),
emp_county NUMBER(2) NOT NULL,
emp_telno NUMBER(10),
emp_position NUMBER(3) NOT NULL,
emp_manager NUMBER(4),
CONSTRAINT pk_empid PRIMARY KEY (emp_id),
CONSTRAINT fk_empcounty FOREIGN KEY (emp_county) REFERENCES County(county_id),
CONSTRAINT fk_empposition FOREIGN KEY (emp_position) REFERENCES Positions(position_id),
CONSTRAINT fk_empmanager FOREIGN KEY (emp_manager) REFERENCES Manager(manager_id)
);
CREATE TABLE Facilities (
facility_id NUMBER(2) NOT NULL,
facility_name VARCHAR(15) NOT NULL,
facility_manager NUMBER(4) NOT NULL,
CONSTRAINT pk_facilityid PRIMARY KEY (facility_id);
CONSTRAINT fk_facilitymanager FOREIGN KEY (facility_manager) REFERENCES Manager(manager_id)
);
什麼問題>? –
我應該有一個單獨的經理表,還是應該在僱員表 – adohertyd
中包括經理?我的首選是將'employee'中的'manager_id'自我指涉回'emp_id',也是'employee',但如果您不喜歡它有單獨的表。 – Ben