[英]Anorm get Int as result
我有这样的代码:
def getUserId(email: String) = DB.withConnection { implicit con =>
SQL("select userId from signUp where email = {email}").
on('email -> email).as(SqlParser.str("access_token").singleOpt)
}
结果是String
。
我怎样才能得到结果为Int
。
如果您查看Anorm文档 ,则可以看到如何使用行解析器。
对于Int
,请使用SqlParser.get[Int]
或其方便的别名SqlParser.int
。
在那里,您正在寻找单列的行, .scalar
更好。
val res: Option[Int] =
SQL"SELECT userId FROM signUp WHERE email = $email".
as(SqlParser.scalar[Int].singleOpt)
注意Anorm插值
SQL"..."
(不带括号)。
我认为它应该工作
def getUserId(email: String) = {
val userId = DB.withConnection {
implicit a => SQL( """ select userId from signUp where email = {email} """).on('email -> email).as(SqlParser.str("access_token").singleOpt)
}
userId.toInt
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.