u
This commit is contained in:
28
src/providers/sqlite3/downgrade/4_to_3.js
Normal file
28
src/providers/sqlite3/downgrade/4_to_3.js
Normal file
@@ -0,0 +1,28 @@
|
||||
/**
|
||||
* Schema 4 → 3 (SQLite):
|
||||
* - Drops agentprinter table
|
||||
* - Removes enabled from printeragent
|
||||
* - Restores clientserial, clientmodel, clientstate in printeragent
|
||||
* @param {{ exec: (sql: string) => void, assertVersion: (v: number) => Promise<void>, setVersion: (v: number) => Promise<void> }} ctx
|
||||
*/
|
||||
export default async function downgrade({ exec, assertVersion, setVersion }) {
|
||||
await assertVersion(4);
|
||||
|
||||
exec(`DROP TABLE IF EXISTS agentprinter;`);
|
||||
|
||||
try {
|
||||
exec(`ALTER TABLE printeragent DROP COLUMN enabled;`);
|
||||
} catch {}
|
||||
try {
|
||||
exec(`ALTER TABLE printeragent ADD COLUMN clientserial TEXT;`);
|
||||
} catch {}
|
||||
try {
|
||||
exec(`ALTER TABLE printeragent ADD COLUMN clientmodel TEXT;`);
|
||||
} catch {}
|
||||
try {
|
||||
exec(`ALTER TABLE printeragent ADD COLUMN clientstate TEXT;`);
|
||||
} catch {}
|
||||
|
||||
await setVersion(3);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user