mirror of
https://github.com/mikedilger/gossip.git
synced 2024-09-19 19:46:50 +00:00
Schema 12 - add some foreign keys
This commit is contained in:
parent
262a7d9065
commit
fde7bff420
@ -116,6 +116,7 @@ fn upgrade(db: &Connection, mut version: u16) -> Result<(), Error> {
|
|||||||
apply_sql!(db, version, 9, "schema9.sql");
|
apply_sql!(db, version, 9, "schema9.sql");
|
||||||
apply_sql!(db, version, 10, "schema10.sql");
|
apply_sql!(db, version, 10, "schema10.sql");
|
||||||
apply_sql!(db, version, 11, "schema11.sql");
|
apply_sql!(db, version, 11, "schema11.sql");
|
||||||
|
apply_sql!(db, version, 12, "schema12.sql");
|
||||||
tracing::info!("Database is at version {}", version);
|
tracing::info!("Database is at version {}", version);
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
24
src/db/schema12.sql
Normal file
24
src/db/schema12.sql
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
ALTER TABLE event_hashtag RENAME TO event_hashtag_old;
|
||||||
|
CREATE TABLE event_hashtag (
|
||||||
|
event TEXT NOT NULL,
|
||||||
|
hashtag TEXT NOT NULL,
|
||||||
|
UNIQUE(event, hashtag),
|
||||||
|
CONSTRAINT fk_event FOREIGN KEY (event) REFERENCES event (id) ON DELETE CASCADE
|
||||||
|
);
|
||||||
|
INSERT OR IGNORE INTO event_hashtag (event, hashtag) SELECT event, hashtag FROM event_hashtag_old;
|
||||||
|
DROP TABLE event_hashtag_old;
|
||||||
|
|
||||||
|
|
||||||
|
ALTER TABLE event_relationship RENAME TO event_relationship_old;
|
||||||
|
CREATE TABLE event_relationship (
|
||||||
|
original TEXT NOT NULL,
|
||||||
|
refers_to TEXT NOT NULL,
|
||||||
|
relationship TEXT CHECK (relationship IN ('reply', 'quote', 'reaction', 'deletion')) NOT NULL,
|
||||||
|
content TEXT DEFAULT NULL,
|
||||||
|
CONSTRAINT fk_original FOREIGN KEY (original) REFERENCES event (id) ON DELETE CASCADE,
|
||||||
|
UNIQUE(original, refers_to)
|
||||||
|
);
|
||||||
|
INSERT OR IGNORE INTO event_relationship (original, refers_to, relationship, content)
|
||||||
|
SELECT original, referring, relationship, content FROM event_relationship_old;
|
||||||
|
DROP TABLE event_relationship_old;
|
Loading…
Reference in New Issue
Block a user