原始问题here .
我正在 CodeIgniter 中创建一个具有配对值的表单 - 公司和首席执行官。这个想法是,虽然表单上最初只有一个公司字段和一个首席执行官字段,但有一个按钮可供用户创建更多对公司-首席执行官字段。另外,还会有另一个页面,我将从表单中获取输入并输出如下内容:
CEO X is head of Company A
因此,这确实意味着我必须使这些配对在某种程度上相互关联。根据之前的建议,我的 Main
MySQL 表将如下所示:
id int
Attribute1 blob
Attribute2 blob
然后我将有一个 Company
表:
id int
Company text
foo blob
最后,我将有一个 CEO
表:
id int
CEO text
foo blob
这个想法是为了简单起见,对于 Main
中的每条记录,应该足够简单地找出哪些 Company-CEO 对属于该记录,因为它们都共享相同的 ID。每次填写并提交表单时都会创建该 ID。但是,我可以使用什么方法将每个公司与其相应的首席执行官关联起来?
最佳答案
您不会在主表中存储任何可识别与该记录关联的首席执行官/公司的内容,除非您将其存储在 blob 字段中。如果您想允许一家公司有多位首席执行官,您需要
company table (id, companyname)
ceo table (id, ceoname)
company_ceos (ceo_id, company_id)
并且很可能需要其中的一些日期信息,以便您可以说“John Doe”是从 '99 年到 '08 年担任首席执行官,而“Jane Smith”是从 '09 年至今担任首席执行官
关于MySQL:在多个表中存储变量值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4697459/