我有一个模型,如下所示。
case class House (
id: Int,
name: String,
cityId: Int,
leaseInterval: Interval
)
case class Interval(start: ZonedDateTime, end: ZonedDateTime)
我的表定义如下。
CREATE TABLE houses(
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY ,
name VARCHAR(255),
city_id INT NOT NULL,
start_at datetime DEFAULT NULL,
end_at datetime DEFAULT NULL,
);
我正在尝试编写一个方法,在MySQL数据库中保存一个房子,如下所示。
val c = House.column
val id = sql"insert into ${House.table} (${c.name}, ${c.cityId}, ${c.startAt}, ${c.endAt}) values (${name}, ${cityId}, ${startAt}, ${endAt})".stripMargin.updateAndReturnGeneratedKey.apply()
但是我得到了下面的编译错误。
House#startAt not found. Expected fields are #id, #name, #cityId, #leaseInterval.
对于c.endAt
列,我也得到了同样的错误。
我做错了什么吗?如果我使用c.column("start_at")
,这个错误就会消失。
发布于 2017-11-22 23:30:54
似乎你的房屋类和房屋表之间的不匹配可能是导致它的原因。您还需要Interval中的列,或者将startAt和endAt放入您的House类中。
https://stackoverflow.com/questions/45502853
复制相似问题