Fix ALTER TABLE migration for created_at column
SQLite ALTER TABLE ADD COLUMN does not support DEFAULT expressions, only literal values. Use DEFAULT '' then UPDATE existing rows.
This commit is contained in:
@@ -47,7 +47,11 @@ impl Db {
|
|||||||
)
|
)
|
||||||
.ok();
|
.ok();
|
||||||
conn.execute_batch(
|
conn.execute_batch(
|
||||||
"ALTER TABLE tasks ADD COLUMN created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%d %H:%M:%S', 'now'));",
|
"ALTER TABLE tasks ADD COLUMN created_at TEXT NOT NULL DEFAULT '';",
|
||||||
|
)
|
||||||
|
.ok();
|
||||||
|
conn.execute_batch(
|
||||||
|
"UPDATE tasks SET created_at = updated_at WHERE created_at = '';",
|
||||||
)
|
)
|
||||||
.ok();
|
.ok();
|
||||||
Ok(Self { conn: Mutex::new(conn) })
|
Ok(Self { conn: Mutex::new(conn) })
|
||||||
|
|||||||
Reference in New Issue
Block a user