{-# LANGUAGE QuasiQuotes #-} module Simplex.Chat.Store.SQLite.Migrations.M20241023_chat_item_autoincrement_id where import Database.SQLite.Simple (Query) import Database.SQLite.Simple.QQ (sql) m20241023_chat_item_autoincrement_id :: Query m20241023_chat_item_autoincrement_id :: Query m20241023_chat_item_autoincrement_id = [sql| INSERT INTO sqlite_sequence (name, seq) SELECT 'chat_items', MAX(ROWID) FROM chat_items; PRAGMA writable_schema=1; UPDATE sqlite_master SET sql = replace(sql, 'INTEGER PRIMARY KEY', 'INTEGER PRIMARY KEY AUTOINCREMENT') WHERE name = 'chat_items' AND type = 'table'; PRAGMA writable_schema=0; |] down_m20241023_chat_item_autoincrement_id :: Query down_m20241023_chat_item_autoincrement_id :: Query down_m20241023_chat_item_autoincrement_id = [sql| DELETE FROM sqlite_sequence WHERE name = 'chat_items'; PRAGMA writable_schema=1; UPDATE sqlite_master SET sql = replace(sql, 'INTEGER PRIMARY KEY AUTOINCREMENT', 'INTEGER PRIMARY KEY') WHERE name = 'chat_items' AND type = 'table'; PRAGMA writable_schema=0; |]