我正在使用Clojure和Luminus创建一个Web应用程序,但是当我创建一个包含我需要的所有表的迁移文件时,它只会创建第一个。这是我的user-table.up.sql
文件:
CREATE TABLE UserTable (
id INTEGER PRIMARY KEY AUTOINCREMENT,
first_name VARCHAR(50),
last_name VARCHAR(50),
gender VARCHAR(50),
email VARCHAR(50) UNIQUE,
password VARCHAR(400),
time_stamp TIMESTAMP,
is_active BOOLEAN
);
CREATE TABLE LoginTable (
id INTEGER PRIMARY KEY AUTOINCREMENT,
user_id INTEGER,
time_stamp TIMESTAMP
);
当我运行lein run migrate
时,只创建了表UserTable
。这应该是这样的吗?我是否需要为每个表创建一个迁移文件?
答案 0 :(得分:2)
只是让Michiel根据您的情况在这里回答,要在迁移中运行多个语句,请在您的情况下用--;;
分隔它们:
CREATE TABLE UserTable (
id INTEGER PRIMARY KEY AUTOINCREMENT,
first_name VARCHAR(50),
last_name VARCHAR(50),
gender VARCHAR(50),
email VARCHAR(50) UNIQUE,
password VARCHAR(400),
time_stamp TIMESTAMP,
is_active BOOLEAN
);
--;;
CREATE TABLE LoginTable (
id INTEGER PRIMARY KEY AUTOINCREMENT,
user_id INTEGER,
time_stamp TIMESTAMP
);
答案 1 :(得分:1)
当您使用Luminus时,您可能正在使用Migratus。如果要在一个sql文件中执行多个语句,请阅读: