AtOM/share/schema.sql
2013-02-26 02:12:20 +01:00

29 lines
815 B
SQL

BEGIN TRANSACTION;
CREATE TABLE source_files (
id INTEGER PRIMARY KEY,
filename TEXT UNIQUE NOT NULL,
size INTEGER NOT NULL,
hash TEXT,
last_change INTEGER NOT NULL DEFAULT (strftime('%s','now')),
last_seen INTEGER NOT NULL DEFAULT (strftime('%s','now'))
);
CREATE TABLE destinations (
id INTEGER PRIMARY KEY,
path TEXT UNIQUE NOT NULL
);
CREATE TABLE destination_files (
id INTEGER PRIMARY KEY,
filename TEXT UNIQUE NOT NULL,
last_change INTEGER NOT NULL DEFAULT (strftime('%s','now')),
to_delete NOT NULL DEFAULT 0,
update_needed NOT NULL DEFAULT 1,
source_file_id INTEGER,
destination_id INTEGER,
FOREIGN KEY (source_file_id) REFERENCES source_files(id),
FOREIGN KEY (destination_id) REFERENCES destinations(id)
);
CREATE INDEX sourcefiles_by_name ON source_files (filename,id);
COMMIT;