我在新数据库中创建联结表时遇到困难。我使用这些查询来创建表:
CREATE TABLE dbo.EmployeeUnavailability
(
ID INT IDENTITY(1,1) PRIMARY KEY,
EmployeeName varchar(50),
Monday varchar(10),
Tuesday varchar(10),
Wednesday varchar(10),
Thursday varchar(10),
Friday varchar(10),
Saturday varchar(10),
Sunday varchar(10),
SupervisorName varchar(50),
)
GO
CREATE TABLE dbo.EmployeeAttendance
(
ID INT IDENTITY(1,1) PRIMARY KEY,
EmployeeName varchar(50),
Monday varchar(20),
Tuesday varchar(20),
Wednesday varchar(20),
Thursday varchar(20),
Friday varchar(20),
Saturday varchar(20),
Sunday varchar(20),
SupervisorName varchar(50),
)
GO
CREATE TABLE dbo.EmployeePerformance
(
ID INT IDENTITY(1,1) PRIMARY KEY,
EmployeeName varchar(50),
Attitude varchar(250),
AttitudeDD tinyint,
WorkQuality varchar(250),
WorkQualityDD tinyint,
Communication varchar(250),
CommunicationDD tinyint,
Leadership varchar(250),
LeadershipDD tinyint,
ImprovementAchievement varchar(250),
ImprovementAchievementDD tinyint,
SupervisorName varchar(50),
)
GO
从那里开始,我很难创建一个引用所有三个表的联结表。三个表中的员工姓名和主管名称相同。
答案 0 :(得分:1)
拥有一个引用所有3个表的表并不是一个好主意IMO。它将允许该联结表中的行可以引用其他表中没有任何共同点的行。即联结表中的一行可以引用第1行中的John,第2行中的Mary和第3表中的Garry。
创建一个仅包含Employee实体属性的Employee表。添加具有其ID的EmployeeUnavailability,指向Employee中的一行,并使用datetime类型的列标识日期。
员工出勤与员工绩效无关。一名员工很少表现出来,但却是表演忍者。