aboutsummaryrefslogtreecommitdiff
path: root/setup.sql
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2026-06-03 23:57:21 +0530
committerAkshay Nair <phenax5@gmail.com>2026-06-03 23:57:21 +0530
commited4b84d2ca7e5b13d010effefb8ae676d084124a (patch)
tree7aa142e52a3a2bd9e1d760dc8648e523d919dae7 /setup.sql
parent3be6325b1292233fae4817b3b864eca7b9911898 (diff)
downloadsqlite-creative-coding-ed4b84d2ca7e5b13d010effefb8ae676d084124a.tar.gz
sqlite-creative-coding-ed4b84d2ca7e5b13d010effefb8ae676d084124a.zip
Refactor image.sh to handle png + cleanup sql
Diffstat (limited to '')
-rw-r--r--setup.sql11
1 files changed, 5 insertions, 6 deletions
diff --git a/setup.sql b/setup.sql
index 7b6732e..3a80a8c 100644
--- a/setup.sql
+++ b/setup.sql
@@ -8,20 +8,19 @@ CREATE TABLE images (
);
CREATE TABLE pixels (
- id INTEGER PRIMARY KEY AUTOINCREMENT,
+ id INTEGER PRIMARY KEY,
image_id TEXT NOT NULL,
x INTEGER NOT NULL,
y INTEGER NOT NULL,
r INTEGER NOT NULL CHECK(r >= 0 AND r <= 255),
g INTEGER NOT NULL CHECK(g >= 0 AND g <= 255),
b INTEGER NOT NULL CHECK(b >= 0 AND b <= 255),
- FOREIGN KEY(image_id) REFERENCES images(id),
+ -- FOREIGN KEY(image_id) REFERENCES images(id) ON DELETE CASCADE,
UNIQUE(image_id, x, y)
);
-CREATE TRIGGER delete_pixels_when_image_deleted
-AFTER DELETE ON images
-WHEN (SELECT COUNT(*) FROM images WHERE id = OLD.id) = 0
+CREATE TRIGGER delete_pixels_when_image_reinserted_because_i_said_so_and_to_make_rerunning_easier
+BEFORE INSERT ON images
BEGIN
- DELETE FROM pixels WHERE image_id = OLD.id;
+ DELETE FROM pixels WHERE image_id = NEW.id;
END;