0

我正在尝试在 MySQL 表中插入一行,如下所示:

create table CURRENCIES ( 
  code        VARCHAR(3), 
  description VARCHAR(30),
  PRIMARY KEY (`code`)
);

我的斯卡拉代码是:

val pk: Option[String] = DB.withConnection { implicit conn =>
  SQL("INSERT INTO currencies (code, description) VALUES ({code}, {description});")
      .on("code" -> code , "description" -> description)
      .executeInsert()
}

但是我在使用 VARCHAR 时由于预期的数字 PK 而出现错误。我已经阅读了 ResultSetParser 来实现这种插入,但我不知道如何使用它。

有什么帮助吗?

4

1 回答 1

0

这是解决方案:

val pk: Option[String] = DB.withConnection { implicit conn =>
  SQL("INSERT INTO currencies (code, description) VALUES ({code}, {description});")
    .on("code" -> code , "description" -> description)
    .executeInsert[Option[String]](
                  ResultSetParser.singleOpt[String](
                      anorm.SqlParser.get[String]("1")
                  )
              )

}

于 2013-10-03T19:20:31.130 回答