Как создать ограничения базы данных с помощью ORMLite? - PullRequest
0 голосов
/ 18 ноября 2018

Я пытаюсь сгенерировать базу данных SQLite через ORMLite:

Main.java:

    connectionSource = new JdbcConnectionSource("jdbc:sqlite:testvault.db");
    TableUtils.createTableIfNotExists(connectionSource, Account.class);
    TableUtils.createTableIfNotExists(connectionSource, Order.class);

Account.java:

    @DatabaseTable
    public class Account {
        @DatabaseField(generatedId = true)
        private Integer id;
        @DatabaseField(canBeNull = false)
        private String name;

        public Account() {
        }
    }

Order.java:

    @DatabaseTable
    public class Order {
        @DatabaseField(generatedId = true)
        private Integer id;
        @DatabaseField(foreign = true, foreignAutoRefresh = true, foreignAutoCreate = true)
        private Account account;

        public Order() {
        }
    }

и создает таблицу с:

    CREATE TABLE `order` (
        `id`    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
        `account_id`    INTEGER NOT NULL
    );

вместо:

    CREATE TABLE `order` (
        `id`    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
        `account_id`    INTEGER NOT NULL,
        FOREIGN KEY(`account_id`) REFERENCES `account`(`id`)
    );

Что мне нужно сделать, чтобы ORMLite генерировал ограничения?

...