| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- ALTER TABLE mint_quote ADD COLUMN amount_paid INTEGER NOT NULL DEFAULT 0;
- ALTER TABLE mint_quote ADD COLUMN amount_minted INTEGER NOT NULL DEFAULT 0;
- ALTER TABLE mint_quote ADD COLUMN payment_method TEXT NOT NULL DEFAULT 'BOLT11';
- -- Remove NOT NULL constraint from amount column
- PRAGMA foreign_keys=off;
- CREATE TABLE mint_quote_new (
- id TEXT PRIMARY KEY,
- mint_url TEXT NOT NULL,
- payment_method TEXT NOT NULL DEFAULT 'bolt11',
- amount INTEGER,
- unit TEXT NOT NULL,
- request TEXT NOT NULL,
- state TEXT NOT NULL,
- expiry INTEGER NOT NULL,
- amount_paid INTEGER NOT NULL DEFAULT 0,
- amount_issued INTEGER NOT NULL DEFAULT 0,
- secret_key TEXT
- );
- -- Explicitly specify columns for proper mapping
- INSERT INTO mint_quote_new (
- id,
- mint_url,
- payment_method,
- amount,
- unit,
- request,
- state,
- expiry,
- amount_paid,
- amount_issued,
- secret_key
- )
- SELECT
- id,
- mint_url,
- 'bolt11', -- Default value for the new payment_method column
- amount,
- unit,
- request,
- state,
- expiry,
- 0, -- Default value for amount_paid
- 0, -- Default value for amount_minted
- secret_key
- FROM mint_quote;
- DROP TABLE mint_quote;
- ALTER TABLE mint_quote_new RENAME TO mint_quote;
- PRAGMA foreign_keys=on;
- -- Set amount_paid equal to amount for quotes with PAID or ISSUED state
- UPDATE mint_quote SET amount_paid = amount WHERE state = 'PAID' OR state = 'ISSUED';
- -- Set amount_issued equal to amount for quotes with ISSUED state
- UPDATE mint_quote SET amount_issued = amount WHERE state = 'ISSUED';
|