mirror of
https://codeberg.org/valpackett/tiddlypwa.git
synced 2025-12-05 18:20:40 -08:00
Server: SQL fixes
This commit is contained in:
parent
363a6ae586
commit
cafd88663a
2 changed files with 8 additions and 3 deletions
1
.env
1
.env
|
|
@ -1,3 +1,2 @@
|
|||
DB_PATH=:memory:
|
||||
ADMIN_PASSWORD_HASH=ZnPOVo2E_oWm71aQ-eOX9U3-gIE2hR6nfksboNcLNPQ
|
||||
ADMIN_PASSWORD_SALT=q6kQ8SNKeaVVQDbhb7TgyqdTp8KAO31rU-6AGT1xG0o
|
||||
|
|
@ -41,7 +41,7 @@ export class SQLiteDatastore extends DB {
|
|||
name TEXT NOT NULL,
|
||||
FOREIGN KEY(token) REFERENCES wikis(token) ON DELETE CASCADE,
|
||||
FOREIGN KEY(etag) REFERENCES files(etag),
|
||||
PRIMARY KEY (token, etag)
|
||||
PRIMARY KEY (token, etag, name)
|
||||
) STRICT;
|
||||
CREATE TRIGGER files_cleanup AFTER DELETE ON wikifiles BEGIN
|
||||
DELETE FROM files WHERE etag = OLD.etag AND (SELECT COUNT(*) FROM wikifiles WHERE etag = OLD.etag) = 0;
|
||||
|
|
@ -118,7 +118,13 @@ export class SQLiteDatastore extends DB {
|
|||
}
|
||||
|
||||
associateFile(token: string, etag: Uint8Array, name: string) {
|
||||
this.query(sql`INSERT INTO wikifiles (token, etag, name) VALUES (:token, :etag, :name)`, { token, etag, name });
|
||||
this.query(
|
||||
sql`
|
||||
INSERT INTO wikifiles (token, etag, name) VALUES (:token, :etag, :name)
|
||||
ON CONFLICT (token, etag, name) DO NOTHING
|
||||
`,
|
||||
{ token, etag, name },
|
||||
);
|
||||
}
|
||||
|
||||
#wikiFileQuery = this.prepareQuery<[], File>(sql`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue