2013-10-03 2 views
0

Я пытаюсь вставить строку в таблице MySQL как этот:Можно ли вставить запись в таблицу с помощью VARCHAR PK с помощью Anorm?

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

Моего Scala код:

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

Но я получаю сообщение об ошибке из-за ожидаемое числовое ПК в то время как я использую VARCHAR. Я прочитал о ResultSetParser для получения таких вставок, но я не могу понять, как его использовать.

Любая помощь?

ответ

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") 
       ) 
      ) 

}

 Смежные вопросы

  • Нет связанных вопросов^_^