CF9 EntityDelete:如何删除实体

Doz*_*Doz 5 coldfusion hibernate coldfusion-9

如果我有一个实体数组,最简单的方法是删除整个实体数组(或者这样说,整个ORM表)?我有:

<cfset allUsers = EntityLoad("User", {}, false)/>
Run Code Online (Sandbox Code Playgroud)

现在要删除所有实体,我会使用某种循环吗?如果是这样,我如何访问单个实体主键?我试过了:

<cfset userTemp = EntityLoad("User", allUsers[i].User.userID, true) /> 
Run Code Online (Sandbox Code Playgroud)

但那不起作用......

Sam*_*mer 10

EntityLoad将返回一个实体对象的数组,以便我们可以遍历它并使用entityDelete:

<cfloop array="#allUsers#" index="User">
   <cfset entityDelete( User )>
</cfloop>
Run Code Online (Sandbox Code Playgroud)

一如既往删除数据时要小心!我通常更喜欢软删除.


Jay*_*son 6

如果你想使用数组表示法,你可以这样做.

<cfloop from="1" to="#arraylen(allUsers)#" index="i">
    <cfset entityDelete( allUsers[i] )>
</cfloop>
Run Code Online (Sandbox Code Playgroud)

在不进行ColdFusion的情况下执行此操作的另一种方法是执行所有工作是执行查询.

<cfset ormexecutequery("DELETE FROM User",true)>
Run Code Online (Sandbox Code Playgroud)