我試圖將cftag查詢轉換成cfscript查詢。ColdFusion遇到的查詢查詢UPDATE
這裏是cftag版本:
<cfquery name="local.qUpdateCRDRMemo" datasource="#Application.dsn.orionTesting#">
UPDATE is_data.crdr_memo
SET
ps_speed_type = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#local.valid.operatingUnit#";,
ps_account_no = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#local.valid.account#";,
ps_class = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#local.valid.class#";,
requested_by = <cfqueryparam cfsqltype="CF_SQL_NUMERIC" value="#local.requestorId#" null="#utils.isNull(local.requestorId)#";,
updated_by = <cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#utils.getUserInfo()#";
WHERE crdr_memo_id = <cfqueryparam cfsqltype="CF_SQL_NUMERIC" value="#local.adjustment#" null="#utils.isNull(local.adjustment)#";
</cfquery>
這是CFSCRIPT
<cfscript>
local.qUpdateCRDRMemo = queryExecute(
"UPDATE is_data.crdr_memo
SET
ps_speed_type = [local].valid.operatingUnit,
ps_account_no = [local].valid.account,
ps_class = [local].valid.class,
requested_by = [local].requestorId,
updated_by = utils.getUserInfo()
WHERE crdr_memo_id = [local].adjustment",
{},
{dbtype="query"}
);
</cfscript>
,我發現了錯誤:java.sql.SQLException中:
查詢查詢語法錯誤。
遭遇「UPDATE。
據我瞭解它看到更新,並認爲這是試圖既ColdFusion和SQL,但爲什麼是這樣。我覺得我失去了一些東西超級簡單,但就是不能看到它。
你通過'DBTYPE =「查詢」' –
@BernhardDöbler謝謝,我想通了,這是爲什麼造成錯誤,但什麼應該是什麼? –
這應該是數據源'{datasource = Application.dsn.orionTesting} –