我有一个包含这些表的数据库:
我将值ProjName,Description和FileStorage插入到表Project
中。我试图将此信息链接到表Users
,其中我只拥有非键列AUID的值。到目前为止,我有这样的事情:
INSERT INTO Project (ProjName, Description, FileStorage)
VALUES
(
'#form.capstoneName#'
,'#form.capstoneDescription#'
, <cfqueryparam cfsqltype="cf_sql_blob" value="#FileReadBinary(FORM.capstoneFile)#">
)
但是,我希望这个特定的INSERT语句通过我为登录用户存储的值AUID与Users表的ID列相关。
答案 0 :(得分:1)
如果Project ID
是标识列,请使用带有INSERT查询的cfquery result attribute来获取新生成的Project ID
。然后使用INSERT / SELECT查找相应的用户ID并将这两个值插入Project_Users
表。根据需要修改cfqueryparam cfsqltypes。
<!--- Inserts one record for EACH matching AUID value --->
INSERT INTO Project_Users ( ProjectID, UserID )
SELECT <cfqueryparam value="#resultName.generatedKey#" cfsqltype="cf_sql_integer">
, ID
FROM Users
WHERE AUID = <cfqueryparam value="{The_AUID_Value}" cfsqltype="{Update_With_Your_Type}">
NB:请务必将{INS引用} cftransaction包裹起来,以确保两个查询succeed or fail as a single unit。
请参阅“结果”属性的其他示例: