Fix sqlite scripts. Closes #35.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
CREATE TABLE ident_switch
|
||||
(
|
||||
id
|
||||
serial
|
||||
integer
|
||||
PRIMARY KEY,
|
||||
user_id
|
||||
integer
|
||||
|
||||
@@ -1,25 +1,76 @@
|
||||
ALTER TABLE
|
||||
ident_switch
|
||||
RENAME COLUMN
|
||||
host
|
||||
TO
|
||||
imap_host;
|
||||
PRAGMA foreign_keys=off;
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
ALTER TABLE
|
||||
ident_switch
|
||||
RENAME COLUMN
|
||||
port
|
||||
TO
|
||||
imap_port;
|
||||
ALTER TABLE ident_switch RENAME TO ident_switch_old;
|
||||
|
||||
ALTER TABLE
|
||||
ident_switch
|
||||
ADD COLUMN
|
||||
CREATE TABLE ident_switch
|
||||
(
|
||||
id
|
||||
integer
|
||||
PRIMARY KEY,
|
||||
user_id
|
||||
integer
|
||||
NOT NULL
|
||||
REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
iid
|
||||
integer
|
||||
NOT NULL
|
||||
REFERENCES identities(identity_id) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
UNIQUE,
|
||||
username
|
||||
varchar(64),
|
||||
password
|
||||
varchar(64),
|
||||
imap_host
|
||||
varchar(64),
|
||||
imap_port
|
||||
integer
|
||||
CHECK(imap_port > 0 AND imap_port <= 65535),
|
||||
label
|
||||
varchar(32),
|
||||
flags
|
||||
integer
|
||||
NOT NULL
|
||||
DEFAULT(0),
|
||||
smtp_host
|
||||
varchar(64);
|
||||
|
||||
ALTER TABLE
|
||||
ident_switch
|
||||
ADD COLUMN
|
||||
varchar(64),
|
||||
smtp_port
|
||||
int;
|
||||
integer
|
||||
CHECK(smtp_port > 0 AND smtp_port <= 65535),
|
||||
UNIQUE (user_id, label)
|
||||
);
|
||||
CREATE INDEX IX_ident_switch_user_id ON ident_switch(user_id);
|
||||
CREATE INDEX IX_ident_switch_iid on ident_switch(iid);
|
||||
|
||||
INSERT OR ROLLBACK INTO
|
||||
ident_switch (
|
||||
id,
|
||||
user_id,
|
||||
iid,
|
||||
username,
|
||||
password,
|
||||
imap_host,
|
||||
imap_port,
|
||||
label,
|
||||
flags,
|
||||
smtp_host
|
||||
)
|
||||
SELECT
|
||||
id,
|
||||
user_id,
|
||||
iid,
|
||||
username,
|
||||
password,
|
||||
host,
|
||||
port,
|
||||
label,
|
||||
flags,
|
||||
host,
|
||||
FROM
|
||||
ident_switch_old;
|
||||
|
||||
DROP TABLE
|
||||
ident_switch_old;
|
||||
|
||||
COMMIT;
|
||||
PRAGMA foreign_keys=on;
|
||||
Reference in New Issue
Block a user