创建员工管理系统。
CREATE TABLE IF NOT EXISTS `tbl_employees` (
`employee_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`start_date` DATE NOT NULL,
`end_date` DATE NOT NULL,
PRIMARY KEY (`employee_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
有10家员工可以工作的公司。有数百万的员工。基于编码标准,安全性和速度,这是更好的。
每个公司的单独表格,然后动态引用。例。 tbl_companya_employees,tbl_companyb_employees,tbl_companyc_employees OR
将company_name列添加到tbl_employees表
为什么?谢谢。
答案 0 :(得分:2)
最好在employee表中有一个公司列,这样你就可以编写适用于任何公司的通用连接。如果您有一个单独的表,则必须编写为相应公司生成动态查询的代码。
答案 1 :(得分:2)
添加一个名为company。的新表。
company
company_id int primary_key autoincrement whatever,
name varchar,
... other details ...
然后将company_id列添加到employee表。
更好的是,如果您希望保留的不仅仅是员工的CURRENT公司,请创建employee_company_history表:
employee_company_history
employee_id
company_id
start_date
end_date