如何使用cakephp防止从表中选择

时间:2014-09-11 18:01:31

标签: mysql cakephp unique

我有cakephp网站
它适用于经常从不同分支机构提交表格的公司 来自每个分支的任何许多用户进行数据输入
我必须根据其他表值动态生成formID 所以在插入之前,我会从tbl1,tbl2,tbl3,tbl4中选择并连接它们。
我担心如果同时另一个数据输入操作员提交表单,那么复制formID可能会导致
如何在我的情况下确认唯一的formID ------------ -----------编辑
我必须以下列格式生成formID

project_code-sub_project_code-version_name-last_id+1   

ABCD01-WEBAPP-Beta-23   

'project_code'位于'项目'表中 'sub_project_code'位于'sub_projects'表中 'version_name'位于'版本'表中 和 我有'客户'表,其中有外键引用上表 现在插入'客户'记录
我从'projects'表中选择'project_code',从'sub_projects'表中选择'sub_project_code'..... 和'客户'表中的'count(*)+ 1' 现在连接所有这些并插入'clients'表作为'formID'

1 个答案:

答案 0 :(得分:0)

由于您要在clients表中保存formID,因此您有一个现有formID列表。选择数据以构建formID之后,但在插入之前,请检查formID是否已存在。如果没有,你可以肯定它是独一无二的。如果formID已经存在,那么您知道不要插入它,如果需要,您可以返回现有的记录ID。

鉴于此检查,两个人将无法插入相同的formID,因为第一个人将成功,但第二个人将检测到现有的formID。

除非您想出另一种比较方法,否则需要进行formID选择以检查唯一性。