dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

33.sql (1129B)


      1 -- +migrate Up
      2 CREATE TABLE IF NOT EXISTS forum_threads_tmp (
      3     id INTEGER NOT NULL PRIMARY KEY,
      4     uuid VARCHAR(100) UNIQUE NOT NULL,
      5     name VARCHAR(255) NOT NULL,
      6     user_id INTEGER NOT NULL,
      7     is_club TINYINT(1) NOT NULL DEFAULT 0,
      8     created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
      9     CONSTRAINT forum_threads_user_id_fk
     10         FOREIGN KEY (user_id)
     11             REFERENCES users (id)
     12             ON DELETE CASCADE
     13             ON UPDATE CASCADE);
     14 
     15 INSERT INTO forum_threads_tmp (id, uuid, name, user_id, is_club, created_at)
     16 SELECT id, lower(
     17             hex(randomblob(4)) || '-' || hex(randomblob(2)) || '-' || '4' ||
     18             substr(hex( randomblob(2)), 2) || '-' ||
     19             substr('AB89', 1 + (abs(random()) % 4) , 1)  ||
     20             substr(hex(randomblob(2)), 2) || '-' ||
     21             hex(randomblob(6))
     22     ), name, user_id, 1, created_at FROM forum_threads;
     23 
     24 DROP TABLE forum_threads;
     25 
     26 ALTER TABLE forum_threads_tmp RENAME TO forum_threads;
     27 
     28 CREATE INDEX forum_threads_user_id_idx ON forum_threads (user_id);
     29 CREATE INDEX forum_threads_is_club_idx ON forum_threads (is_club);
     30 -- +migrate Down