确保使用Anorm执行或不执行查询

时间:2014-08-23 05:49:01

标签: mysql scala playframework anorm

更新查询返回1但插入查询返回None

def que3(params) {
 DB.withConnection { implicit c =>
    val i=SQL("UPDATE QUERY").executeUpdate
    val j=SQL("INSERT QUERY").executeInsert
    val k=SQL("INSERT QUERY").executeInsert
    println(i)//1
    println(j)//None
    println(k)//None
 }
}

我想确保这些查询是否能完成工作?我怎么能得到这个。

或者我应该尝试使用try catch block三种方法吗?

我正在使用scala 2.10和play framework 2.2

1 个答案:

答案 0 :(得分:2)

您可以使用executeUpdate,因为executeInsert是相同的,但如果您需要,则返回生成的ID(自动包含字段等)。它对它们使用相同的JDBC调用。

https://github.com/playframework/playframework/blob/863a9bdf78c25e9161043f3c6f8567b9e12fb3bb/framework/src/anorm/src/main/scala/anorm/Anorm.scala#L375