首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态(变量)数据库表名与列中存储的变量

动态(变量)数据库表名与列中存储的变量
EN

Stack Overflow用户
提问于 2012-08-17 22:09:58
回答 2查看 201关注 0票数 0

创建员工管理系统。

代码语言:javascript
复制
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家公司的员工可以为之工作。有上百万的员工。基于编码标准,安全性和速度更好。

  1. 为每个公司提供一个单独的表,然后动态引用该表。举例说明。tbl_companya_employees,tbl_companyb_employees,tbl_companyc_employees
  2. 将company_name列添加到tbl_employees表中

为什么?谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-17 22:22:33

添加一个名为company的新表。

代码语言:javascript
复制
company 
    company_id int primary_key autoincrement whatever,
    name varchar,
    ... other details ...

然后将company_id列添加到employee表中。

更好的是,如果您希望保留的比员工当前的公司更多,请创建一个employee_company_history表:

代码语言:javascript
复制
employee_company_history
    employee_id
    company_id 
    start_date
    end_date
票数 2
EN

Stack Overflow用户

发布于 2012-08-17 22:17:14

最好在employee表中有一个公司列,这将允许您编写与任何公司的通用连接。如果您有一个单独的表,则必须编写代码,为适当的公司生成动态查询。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12013842

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档