Как в exposed создавать таблицы в разных схемах?

Собственно вопрос по данной ORM: https://github.com/JetBrains/Exposed.

Требуется средствами самой библиотеки exposed просто, прозрачно и без SQL создавать таблицы в разных схемах.

Просто таблицы в библиотеке объявляется так:

    object TestTable : IntIdTable("TEST_TABLE", "ID") {
        val name = text("name").default("any string")
        val number = integer("number").uniqueIndex("number_unique")
    }

А создаётся в базе, потом, так:

SchemaUtils.create(TestTable)

Но, если объявить таблицу так:

    object TestTable : IntIdTable("TEST.TEST_TABLE", "ID") {
        val name = text("name").default("any string")
        val number = integer("number").uniqueIndex("number_unique")
    }

То на ней не сможет отработать следующее:

SchemaUtils.createMissingTablesAndColumns(TestTable)

Потому как факт наличия/отсутствия колонок проверяется функцией SchemaUtils.createMissingTablesAndColumns исключительно в схеме по умолчанию, вне зависимости от того, в какой схеме создана таблица.

В самом крайнем случае я планировал переписать класс SchemaUtils так, что бы он делал всё как я хочу, но я считаю это очень плохим решением.

Так что, если вдруг кто знает, как назначить схему для таблицы, прошу поделитесь.


Ответы (0 шт):