diff --git a/internal/database/migrations/20240720055723_add_databases_table.sql b/internal/database/migrations/20240720055723_add_databases_table.sql index 12ca392..f313bed 100644 --- a/internal/database/migrations/20240720055723_add_databases_table.sql +++ b/internal/database/migrations/20240720055723_add_databases_table.sql @@ -5,6 +5,7 @@ CREATE TABLE IF NOT EXISTS databases ( name TEXT NOT NULL UNIQUE, connection_string TEXT NOT NULL, + pg_version TEXT NOT NULL CHECK (pg_version in ('13', '14', '15', '16')), created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ diff --git a/internal/service/databases/create_database.sql b/internal/service/databases/create_database.sql index a42655b..148ac15 100644 --- a/internal/service/databases/create_database.sql +++ b/internal/service/databases/create_database.sql @@ -1,4 +1,8 @@ -- name: DatabasesServiceCreateDatabase :one -INSERT INTO databases (name, connection_string) -VALUES (@name, pgp_sym_encrypt(@connection_string, @encryption_key)) +INSERT INTO databases ( + name, connection_string, pg_version +) +VALUES ( + @name, pgp_sym_encrypt(@connection_string, @encryption_key), @pg_version +) RETURNING *; diff --git a/internal/service/databases/update_database.sql b/internal/service/databases/update_database.sql index a4ab20f..1172466 100644 --- a/internal/service/databases/update_database.sql +++ b/internal/service/databases/update_database.sql @@ -3,5 +3,6 @@ UPDATE databases SET name = @name, connection_string = pgp_sym_encrypt(@connection_string, @encryption_key) + pg_version = @pg_version WHERE id = @id RETURNING *;