我正在尝试执行SELECT语句,其中参数可能具有空值:
SQL(
"""
SELECT id FROM devices WHERE
name = {name}
""")
.on("name" -> device.name)()
.collectFirst {
...
}.getOrElse {
...
}
device.name
可以返回null。使用db.default.logStatements=true
我看到生成的SQL如下所示:SELECT id FROM devices WHERE name = NULL
。
name = NULL
对Postgre SQL不太有效,但我使用transform_null_equals
启用了它。现在,当我使用pgAdmin从日志执行SQL时,它可以正常工作。但是,ANORM找不到任何东西。
以下代码确实返回结果:
SQL(
"""
SELECT id FROM devices WHERE
name = NULL
""")
.on("name" -> device.name)()
.collectFirst {
...
}.getOrElse {
...
}
它出了什么问题?!