From de9cae795f93d03e68d965c59af4b21d96df4ec7 Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Mon, 23 Dec 2024 10:39:16 -0500 Subject: initial --- build/db-init/rev.sql | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 build/db-init/rev.sql (limited to 'build/db-init/rev.sql') diff --git a/build/db-init/rev.sql b/build/db-init/rev.sql new file mode 100644 index 0000000..d8443c3 --- /dev/null +++ b/build/db-init/rev.sql @@ -0,0 +1,41 @@ +--- CRIMSON --- A simple PHP framework. +--- Copyright © 2024 Freya Murphy +--- +--- This file is part of CRIMSON. +--- +--- CRIMSON is free software; you can redistribute it and/or modify it +--- under the terms of the GNU General Public License as published by +--- the Free Software Foundation; either version 3 of the License, or (at +--- your option) any later version. +--- +--- CRIMSON is distributed in the hope that it will be useful, but +--- WITHOUT ANY WARRANTY; without even the implied warranty of +--- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +--- GNU General Public License for more details. +--- +--- You should have received a copy of the GNU General Public License +--- along with CRIMSON. If not, see . + +-- Gets the current databse revision. + +CREATE OR REPLACE FUNCTION curr_revision() +RETURNS INTEGER +LANGUAGE plpgsql VOLATILE +AS $BODY$ +DECLARE + _revision INTEGER; +BEGIN + BEGIN + SELECT curr_revision INTO _revision + FROM sys.database_info + WHERE name = current_database(); + RETURN _revision; + EXCEPTION WHEN OTHERS THEN + RETURN 0; + END; +END +$BODY$; + +GRANT EXECUTE ON FUNCTION curr_revision() TO POSTGRES_USER; + +SELECT curr_revision(); -- cgit v1.2.3-freya