mirror of
https://github.com/flibusta-apps/users_settings_server.git
synced 2026-03-03 07:00:52 +01:00
Run SQLx migrations on startup
This commit is contained in:
33
migrations/20240101000004_create_users_languages.sql
Normal file
33
migrations/20240101000004_create_users_languages.sql
Normal file
@@ -0,0 +1,33 @@
|
||||
-- Create users_languages table
|
||||
CREATE TABLE IF NOT EXISTS users_languages (
|
||||
id SERIAL PRIMARY KEY,
|
||||
language INTEGER NOT NULL,
|
||||
"user" INTEGER NOT NULL
|
||||
);
|
||||
|
||||
-- Add foreign key constraints if they don't exist
|
||||
DO $$
|
||||
BEGIN
|
||||
IF NOT EXISTS (
|
||||
SELECT 1 FROM pg_constraint
|
||||
WHERE conname = 'fk_users_languages_languages_language_id'
|
||||
) THEN
|
||||
ALTER TABLE users_languages
|
||||
ADD CONSTRAINT fk_users_languages_languages_language_id
|
||||
FOREIGN KEY (language) REFERENCES languages(id)
|
||||
ON UPDATE CASCADE ON DELETE CASCADE;
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
DO $$
|
||||
BEGIN
|
||||
IF NOT EXISTS (
|
||||
SELECT 1 FROM pg_constraint
|
||||
WHERE conname = 'fk_users_languages_user_settings_user_id'
|
||||
) THEN
|
||||
ALTER TABLE users_languages
|
||||
ADD CONSTRAINT fk_users_languages_user_settings_user_id
|
||||
FOREIGN KEY ("user") REFERENCES user_settings(id)
|
||||
ON UPDATE CASCADE ON DELETE CASCADE;
|
||||
END IF;
|
||||
END $$;
|
||||
Reference in New Issue
Block a user