From: Jason Etheridge Date: Mon, 23 Mar 2009 16:52:55 +0000 (+0000) Subject: sql_current for current or last sql attempt X-Git-Url: http://git.equinoxoli.org/?p=migration-tools.git;a=commitdiff_plain;h=26dc5ad1ffcafc95ba000a11526bc82e0a612b2f sql_current for current or last sql attempt --- diff --git a/sql/base/base.sql b/sql/base/base.sql index c7e5864..816b14c 100644 --- a/sql/base/base.sql +++ b/sql/base/base.sql @@ -42,6 +42,7 @@ CREATE OR REPLACE FUNCTION migration_tools.exec (TEXT,TEXT) RETURNS VOID AS $$ sql ALIAS FOR $2; nrows INTEGER; BEGIN + EXECUTE 'UPDATE ' || migration_schema || '.sql_current SET sql = ' || quote_literal(sql) || ';'; EXECUTE sql; GET DIAGNOSTICS nrows = ROW_COUNT; PERFORM migration_tools.log(migration_schema,sql,nrows); @@ -56,6 +57,9 @@ CREATE OR REPLACE FUNCTION migration_tools.init (TEXT) RETURNS VOID AS $$ migration_schema ALIAS FOR $1; sql TEXT; BEGIN + EXECUTE 'DROP TABLE IF EXISTS ' || migration_schema || '.sql_current;'; + EXECUTE 'CREATE TABLE ' || migration_schema || '.sql_current ( sql TEXT);'; + EXECUTE 'INSERT INTO ' || migration_schema || '.sql_current ( sql ) VALUES ( '''' );'; BEGIN SELECT 'CREATE TABLE ' || migration_schema || '.sql_log ( time TIMESTAMP NOT NULL DEFAULT NOW(), row_count INTEGER, sql TEXT );' INTO STRICT sql; EXECUTE sql;