Я ломал голову над разницей между использованием executeUpdate()
и executeInsert()
.
В следующем коде я использовал executeInsert()
def addEntry(day: DateMidnight, create_time: DateTime, points: Long, src: String) = DB.withTransaction { implicit connection =>
Logger.debug("I got here")
SQL(
"""
INSERT INTO density_cache(day_of, create_time, points, src)
VALUES ({day_of}, {create_time}, {points}, {src})
"""
).on(
'day_of -> day,
'create_time -> create_time,
'points -> points,
'src -> src
).executeInsert()
Logger.debug("Got to 2nd step")
}
Я получаю следующую проблему: Java.lang.RuntimeException: TypeDoesNotMatch (не удается преобразовать 2013-04-15 13:58:46.0: class java.sql.Timestamp в Long для столбца ColumnName (density_cache.day_of, Some (day_of)))
Но когда я переключаюсь на executeUpdate()
, все работает нормально.