【问题标题】:Plain Sql in Slick to Match Char Column?Slick 中的普通 Sql 以匹配字符列?
【发布时间】:2015-12-22 04:50:55
【问题描述】:

导入 slick 的 MySQL 驱动后,

scala> import slick.driver.MySQLDriver.api._
import slick.driver.MySQLDriver.api._

然后我定义一个Char:

scala> val x: Char = 'x'
x: Char = x

最后,我尝试编写一个普通的 SQL 查询:

scala> sql"""SELECT name FROM table WHERE column = ${x}"""
<console>:15: error: could not find implicit 
      value for parameter e: slick.jdbc.SetParameter[Char]
        sql"""SELECT name FROM table WHERE column = ${x}"""

但我得到了上述错误。

如何编写简单的 SQL 来匹配单个字符?

【问题讨论】:

    标签: scala slick


    【解决方案1】:

    这是因为没有 SQL 数据类型来表示单个字符。有些数据类型可以表示一系列字符(CHAR 或 VARCHAR)。因此,在 slick 中没有为 'Char' 实现 SetParameter。您可以查看默认的 SetParameter 实现 here

    如果mysql中'column'的数据类型是'CHAR'或'VARCHAR'之一,你应该声明一个String而不是Char。这应该可以解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-28
      • 2017-05-19
      • 1970-01-01
      • 2020-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多