Exposed не может вставить строку из-за нулевого идентификатора - PullRequest
0 голосов
/ 30 марта 2020

У меня есть таблица Car типа IntIdTable.

Драйвер базы данных: Postgres.

object Car : IntIdTable() {
    val name = varchar("name", 50).nullable()
}

class CarEntity(id: EntityID<Int>) : IntEntity(id) {
    companion object : IntEntityClass<CarEntity>(Car)

    var name by Car.name
}

Когда я пытаюсь вставить строку:

sqlTransaction {
    val entityId = Car.insertAndGetId {
        it[name] = carName
    }
    carId = entityId.toString().toInt()
}

Мне показана следующая ошибка:

Error Message: org.jetbrains.exposed.exceptions.ExposedSQLException: org.postgresql.util.PSQLException: ERROR: null value in column "id" violates not-null constraint
  Detail: Failing row contains (CarName, null, 2020-03-30 18:17:19.776657).
SQL: [INSERT INTO Car ("name") VALUES (?)]

Почему он не обрабатывает первичный ключ id, а вместо него предоставляет null?

...