为什么在ColdFusion中未定义插入和更新查询名称变量

B S*_*yak 1 mysql coldfusion coldfusion-9

我正在研究ColdFusion9和MySQL 5.0.我不确定为什么查询名称变量在插入和更新查询中未定义,即使我在查询之前声明了这些变量.这是示例代码.

<cfset variables.test_update = QueryNew('')>
<cfset variables.res = ''>
<cfquery name="variables.test_update" datasource="dsnTest" result="variables.res">
    INSERT INTO test(
        name
        , rank
    )VALUES(
        'test'
        ,23
    )
</cfquery>
<cfdump var="#variables.res#">
<cfdump var="#variables.test_update#">
Run Code Online (Sandbox Code Playgroud)

这里的结果属性值是可用的,但对于查询名称变量,它抛出了未定义的错误,"元素TEST_UPDATE在VARIABLES中未定义".

我知道,insert,update和delete查询不会通过查询名称属性返回任何结果集.但是,我不确定,为什么在查询执行后查询名称变量是否未定义?

请帮忙.

Ada*_*ron 7

ColdFusion填充variables.test_update从DB驱动程序返回的任何内容,在本例中为[nothing].

CF认为null变量是未定义的.永远有.