CFWheels - 使用save()方法插入记录时出错

时间:2012-07-19 20:05:33

标签: mysql coldfusion railo cfwheels

使用save()时,我在使用CFWheels的Railo上出现以下错误:

  

无法执行语句:因此无法写入二进制日志   BINLOG_FORMAT = STATEMENT,并且至少有一个表使用存储引擎   仅限于基于行的日志记录。 InnoDB只限于行记录时   事务隔离级别为READ COMMITTED或READ UNCOMMITTED。

这是我的代码:

<cfset params.vote['voteUserID'] = params.link.linkUserID />
<cfset params.vote['voteLinkID'] = params.link.linkID />
<cfset params.vote['voteType'] = 1 />

<cfset vote = model("vote").new(params.vote) />
<cfset vote.save() />

知道发生了什么事吗?我有另一个类似的插入语句,它工作正常。我怀疑这与我的数据库表中的seTting有关吗?我正在使用MySQL。

感谢。

2 个答案:

答案 0 :(得分:2)

您是否在此特定环境中使用复制?看起来BINLOG_FORMAT设置与复制有关。

我建议查找MySQL中设置BINLOG_FORMAT的位置,研究各种选项的含义,并将其更改为适合您场景的内容。

请参阅此答案:Why do I get 'Binary logging not possible.' on my MySQL server?

答案 1 :(得分:0)

好的,所以它似乎正在改变数据库表上的存储引擎来自&#34; InnoDB&#34;到&#34; MyISAM&#34;解决了这个问题。也许CFWheels并没有很好地与&#34; InnoDB&#34;由于某些原因;也许有人可以添加评论为什么会这样?