我正在编写一个迁移文件,该文件会更改表,添加新列,但生成的代码未更新,因此我无法将新记录插入到具有新列值的表中。
例子:
// BankAccount.sq file
CREATE TABLE bank_account (
id INTEGER PRIMARY KEY,
bank_code TEXT NOT NULL,
account_number INTEGER NOT NULL,
account_digit INTEGER NOT NULL
);
selectALL:
SELECT * FROM bank_account;
insert:
INSERT INTO bank_account VALUES (?,?,?,?);
// 1.sqm file
ALTER TABLE bank_account ADD COLUMN bank_name TEXT;
Run Code Online (Sandbox Code Playgroud)
添加该列后,生成的代码似乎没有更新。例如,该insert函数不会更新以接收表中新添加的列,并且内部生成的 Kotlin 代码不会使用新列进行更新。
有什么办法可以绕过这个问题吗?
小智 7
始终是架构的最新版本,因此您还CREATE TABLE需要在中添加列。CREATE TABLE如果您想让迁移文件成为事实来源,您需要deriveSchemaFromMigrations按照此处所述启用: https: //cashapp.github.io/sqldelight/jvm_mysql/#migration-schema
| 归档时间: |
|
| 查看次数: |
1189 次 |
| 最近记录: |