-- foreign_keys can only up/down outside of transactions
-- so we first pre-commit the one started by sqlx...
COMMIT TRANSACTION;

-- turn off foreign keys...
PRAGMA foreign_keys=OFF;

-- start our own transaction...
BEGIN TRANSACTION;
create table if not exists __replace_frequencies (
	id integer primary key autoincrement,
  description text not null default '',
  target_period number not null
);

insert into __replace_frequencies (id, description, target_period) values
  (1, 'daily', 1),
  (2, 'weekly', 7),
  (3, 'fortnightly', 14),
  (4, 'monthly', 30),
  (5, 'seasonally', 91),
  (6, 'semiannually', 182),
  (7, 'yearly', 365);

drop table frequencies;
alter table __replace_frequencies rename to frequencies;
PRAGMA foreign_key_check;

-- commit our own transaction...
COMMIT TRANSACTION;

-- put our own pragmas back...
PRAGMA foreign_keys=ON;

-- and start a dummy transaction so sqlx's COMMIT doesn't explode
BEGIN TRANSACTION;
