diff --git a/migrations/pooru_1_down.sql b/migrations/pooru_1_down.sql index a24794e..b24d167 100644 --- a/migrations/pooru_1_down.sql +++ b/migrations/pooru_1_down.sql @@ -1,7 +1,11 @@ -DROP VIEW IF EXISTS tagged_media_view; -DROP VIEW IF EXISTS tag_count_view; -DROP TABLE IF EXISTS media_tag; -DROP INDEX IF EXISTS tag_display_idx; -DROP TABLE IF EXISTS tag; -DROP TABLE IF EXISTS kind; -DROP TABLE IF EXISTS media; +DROP VIEW tagged_media_view; +DROP VIEW tag_count_view; +DROP INDEX media_tag_tag_id_idx; +DROP INDEX media_tag_media_id_idx; +DROP TABLE media_tag; +DROP INDEX tag_display_idx; +DROP INDEX tag_name_kind_id_idx; +DROP INDEX tag_name_idx; +DROP TABLE tag; +DROP TABLE kind; +DROP TABLE media; diff --git a/migrations/pooru_1_up.sql b/migrations/pooru_1_up.sql index 029ea8b..58c3e20 100644 --- a/migrations/pooru_1_up.sql +++ b/migrations/pooru_1_up.sql @@ -20,6 +20,8 @@ CREATE TABLE tag( display TEXT (289) AS (concat_ws(':', kind_id, name)) STORED, UNIQUE (name, kind_id) ); +CREATE INDEX tag_name_idx ON tag(name); +CREATE UNIQUE INDEX tag_name_kind_id_idx ON tag(name, kind_id); CREATE UNIQUE INDEX tag_display_idx ON tag(display); CREATE TABLE media_tag( @@ -29,6 +31,8 @@ CREATE TABLE media_tag( FOREIGN KEY (tag_id) REFERENCES tag(id) ON DELETE CASCADE, PRIMARY KEY (media_id, tag_id) ); +CREATE INDEX media_tag_media_id_idx ON media_tag(media_id); +CREATE INDEX media_tag_tag_id_idx ON media_tag(tag_id); CREATE VIEW tag_count_view AS SELECT tag.id AS id,