Я использую Anorm для выполнения запросов к базе данных.Когда я делаю executeUpdate()
, как мне правильно обрабатывать ошибки?он имеет тип возврата MayErr[IntegrityConstraintViolation,Int]
, это набор или карта?
Есть пример , но я не понимаю, как мне обращаться с возвращаемым значением:
val result = SQL("delete from City where id = 99").executeUpdate().fold(
e => "Oops, there was an error" ,
c => c + " rows were updated!"
)
Как проверить, не выполнен ли запрос?(используя result
), и как я могу получить количество затронутых строк, если запрос был успешным?
В настоящее время я использую этот код:
SQL(
"""
INSERT INTO users (firstname, lastname) VALUES ({firstname}, {lastname})
"""
).on("firstname" -> user.firstName, "lastname" -> user.lastName)
.executeUpdate().fold(
e => "Oops, therw was an error",
c => c + " rows were updated!"
)
Но я нене знаю, как должен выглядеть мой код обработки ошибок.Есть ли пример того, как использовать возвращаемое значение типа MayErr[IntegrityConstraintViolation,Int]
?