From d36b2ec5cd5179e81d763d264c52eb1adb30fd32 Mon Sep 17 00:00:00 2001 From: Bborie Park Date: Tue, 13 Dec 2011 18:19:34 +0000 Subject: [PATCH] Removal of now-unsupported AddRasterColumn, DropRasterColumn and DropRasterTable. git-svn-id: http://svn.osgeo.org/postgis/trunk@8390 b70326c6-7e19-0410-871a-916f4a2858ee --- raster/rt_pg/rtpostgis.sql.in.c | 313 --------------------------- raster/rt_pg/rtpostgis_drop.sql.in.c | 11 + 2 files changed, 11 insertions(+), 313 deletions(-) diff --git a/raster/rt_pg/rtpostgis.sql.in.c b/raster/rt_pg/rtpostgis.sql.in.c index 6e9d74685..4fafaa652 100644 --- a/raster/rt_pg/rtpostgis.sql.in.c +++ b/raster/rt_pg/rtpostgis.sql.in.c @@ -4834,319 +4834,6 @@ CREATE OR REPLACE FUNCTION DropOverviewConstraints ( LANGUAGE 'sql' VOLATILE STRICT COST 100; ------------------------------------------------------------------------------- --- AddRasterColumn ------------------------------------------------------------------------------- -CREATE OR REPLACE FUNCTION AddRasterColumn( - p_catalog_name varchar, - p_schema_name varchar, - p_table_name varchar, - p_column_name varchar, - p_srid integer, - p_pixel_types varchar[], - p_out_db boolean, - p_regular_blocking boolean, - p_nodata_values double precision[], - p_scale_x double precision, - p_scale_y double precision, - p_blocksize_x integer, - p_blocksize_y integer, - p_extent geometry -) - RETURNS text AS - $$ - DECLARE - sql text; - real_schema name; - srid_into varchar; - geometry_op_into varchar; - pixel_types varchar[]; - pixel_types_size integer := 0; - pixel_types_found integer := 0; - nodata_values_size integer := 0; - - BEGIN - - RAISE NOTICE 'The set of AddRasterColumn functions are deprecated as the table raster_columns is now a view. This function will still continue to add the specified raster column to the specified table. To apply constraints, use AddRasterConstraints after loading the raster column with data'; - - -- Validate required parametersa and combinations - IF ( (p_catalog_name IS NULL) OR (p_schema_name IS NULL) - OR (p_table_name IS NULL) OR (p_column_name IS NULL) ) THEN - RAISE EXCEPTION 'Name of catalog, schema, table or column IS NULL, value expected'; - RETURN 'fail'; - END IF; - - -- Verify SCHEMA - IF ( p_schema_name IS NOT NULL AND p_schema_name != '' ) THEN - sql := 'SELECT nspname FROM pg_namespace ' - || 'WHERE text(nspname) = ' || quote_literal(p_schema_name) - || 'LIMIT 1'; - --RAISE DEBUG '%', sql; - EXECUTE sql INTO real_schema; - - IF ( real_schema IS NULL ) THEN - RAISE EXCEPTION 'Schema % is not a valid schemaname', quote_literal(p_schema_name); - RETURN 'fail'; - END IF; - END IF; - - IF ( real_schema IS NULL ) THEN - --RAISE DEBUG 'Detecting schema'; - sql := 'SELECT n.nspname AS schemaname ' - || 'FROM pg_catalog.pg_class c ' - || 'JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace ' - || 'WHERE c.relkind = ' || quote_literal('r') - || ' AND n.nspname NOT IN (' - || quote_literal('pg_catalog') || ', ' || quote_literal('pg_toast') || ')' - || ' AND pg_catalog.pg_table_is_visible(c.oid)' - || ' AND c.relname = ' || quote_literal(p_table_name); - --RAISE DEBUG '%', sql; - EXECUTE sql INTO real_schema; - - IF ( real_schema IS NULL ) THEN - RAISE EXCEPTION 'Table % does not occur in the search_path', - quote_literal(p_table_name); - RETURN 'fail'; - END IF; - END IF; - - -- Add raster column to target table - sql := 'ALTER TABLE ' - || quote_ident(real_schema) || '.' || quote_ident(p_table_name) - || ' ADD COLUMN ' || quote_ident(p_column_name) || ' raster '; - --RAISE DEBUG '%', sql; - EXECUTE sql; - - - RETURN p_schema_name || '.' || p_table_name || '.' || p_column_name - || ' srid:' || p_srid::text - || ' pixel_types:' || p_pixel_types::text - || ' out_db:' || p_out_db::text - || ' regular_blocking:' || p_regular_blocking::text - || ' nodata_values:' || COALESCE(quote_literal(p_nodata_values::text), 'NULL') - || ' scale_x:' || COALESCE(quote_literal(p_scale_x), 'NULL') - || ' scale_y:' || COALESCE(quote_literal(p_scale_y), 'NULL') - || ' blocksize_x:' || COALESCE(quote_literal(p_blocksize_x), 'NULL') - || ' blocksize_y:' || COALESCE(quote_literal(p_blocksize_y), 'NULL') - || ' extent:' || COALESCE(ST_AsText(p_extent), 'NULL'); - - END; - $$ - LANGUAGE 'plpgsql' VOLATILE; - - ------------------------------------------------------------------------------- --- AddRasterColumn (with default catalog) -------------------------------------------------------------------------------- -CREATE OR REPLACE FUNCTION AddRasterColumn(schema varchar, - p_table varchar, - p_column varchar, - p_srid integer, - p_pixel_types varchar[], - p_out_db boolean, - p_regular_blocking boolean, - p_nodata_values double precision[], - p_scale_x double precision, - p_scale_y double precision, - p_blocksize_x integer, - p_blocksize_y integer, - p_extent geometry) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT AddRasterColumn('',$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' STABLE; - - ------------------------------------------------------------------------------- --- AddRasterColumn (with default catalog and schema) -------------------------------------------------------------------------------- -CREATE OR REPLACE FUNCTION AddRasterColumn(p_table varchar, - p_column varchar, - p_srid integer, - p_pixel_types varchar[], - p_out_db boolean, - p_regular_blocking boolean, - p_nodata_values double precision[], - p_scale_x double precision, - p_scale_y double precision, - p_blocksize_x integer, - p_blocksize_y integer, - p_extent geometry) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT AddRasterColumn('','',$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' STABLE; - - -------------------------------------------------------------------------------- --- DropRasterColumn -------------------------------------------------------------------------------- --- FIXME: Use 'name' type for table,column and other names -------------------------------------------------------------------------------- -CREATE OR REPLACE FUNCTION DropRasterColumn(catalog_name varchar, - schema_name varchar, - table_name varchar, - column_name varchar) - RETURNS text AS - $$ - DECLARE - myrec record; - real_schema name; - okay boolean; - BEGIN - RAISE NOTICE 'The set of DropRasterColumn functions are deprecated as the table raster_columns is now a view. This function will still continue to drop the specified raster column and related constraints from the specified table. To drop a raster column, use the function DropRasterConstraints and call ALTER TABLE ... DROP COLUMN'; - - -- Find, check or fix schema_name - IF ( schema_name != '' ) THEN - okay = 'f'; - - FOR myrec IN SELECT nspname FROM pg_namespace WHERE text(nspname) = schema_name LOOP - okay := 't'; - END LOOP; - - IF ( okay <> 't' ) THEN - RAISE NOTICE 'invalid schema name - using current_schema()'; - SELECT current_schema() INTO real_schema; - ELSE - real_schema = schema_name; - END IF; - ELSE - SELECT current_schema() INTO real_schema; - END IF; - - -- Find out if the column is in the raster_columns table - okay = 'f'; - FOR myrec IN SELECT * FROM raster_columns WHERE r_table_schema = text(real_schema) - AND r_table_name = table_name AND r_raster_column = column_name LOOP - okay := 't'; - END LOOP; - IF (okay <> 't') THEN - RAISE EXCEPTION 'column % not found in raster_columns table', column_name; - RETURN 'f'; - END IF; - - -- Remove column constraints - EXECUTE 'SELECT DropRasterConstraints(' || quote_literal(real_schema) || ',' || quote_literal(table_name) || ',' || quote_literal(column_name) || ')'; - - -- Remove table column - EXECUTE 'ALTER TABLE ' || quote_ident(real_schema) || '.' - || quote_ident(table_name) || ' DROP COLUMN ' - || quote_ident(column_name); - - RETURN schema_name || '.' || table_name || '.' || column_name ||' effectively removed.'; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - - ------------------------------------------------------------------------ --- DropRasterColumn (with default catalog name) ------------------------------------------------------------------------ -CREATE OR REPLACE FUNCTION DropRasterColumn(schema_name varchar, - table_name varchar, - column_name varchar) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT DropRasterColumn('', schema_name, table_name, column_name) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - ------------------------------------------------------------------------ --- DropRasterColumn (with default catalog and schema name) ------------------------------------------------------------------------ -CREATE OR REPLACE FUNCTION DropRasterColumn(table_name varchar, - column_name varchar) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT DropRasterColumn('', '', table_name, column_name) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - ------------------------------------------------------------------------ --- DropRasterTable --- Drop a table and all its references in raster_columns ------------------------------------------------------------------------ -CREATE OR REPLACE FUNCTION DropRasterTable(catalog_name varchar, - schema_name varchar, - table_name varchar) - RETURNS text AS - $$ - DECLARE - real_schema name; - BEGIN - RAISE NOTICE 'The set of DropRasterTable functions are deprecated as the table raster_columns is now a view. This function will still continue to drop the specified table. To drop a table, use DROP TABLE'; - - IF ( schema_name = '' ) THEN - SELECT current_schema() into real_schema; - ELSE - real_schema = schema_name; - END IF; - - -- Remove table - EXECUTE 'DROP TABLE ' || quote_ident(real_schema) || '.' - || quote_ident(table_name); - - RETURN real_schema || '.' || table_name || ' effectively dropped.'; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - ------------------------------------------------------------------------ --- DropRasterTable (with default catalog name) --- Drop a table and all its references in raster_columns ------------------------------------------------------------------------ -CREATE OR REPLACE FUNCTION DropRasterTable(schema_name varchar, - table_name varchar) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT DropRasterTable('', schema_name, table_name) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - ------------------------------------------------------------------------ --- DropRasterTable (with default catalog and schema name) --- Drop a table and all its references in raster_columns --- For PG>=73 use current_schema() ------------------------------------------------------------------------ -CREATE OR REPLACE FUNCTION DropRasterTable(table_name varchar) - RETURNS text AS - $$ - DECLARE - ret text; - BEGIN - SELECT DropRasterTable('', '', table_name) INTO ret; - RETURN ret; - END; - $$ - LANGUAGE 'plpgsql' VOLATILE STRICT; -- WITH (isstrict); - ------------------------------------------------------------------- -- END ------------------------------------------------------------------- diff --git a/raster/rt_pg/rtpostgis_drop.sql.in.c b/raster/rt_pg/rtpostgis_drop.sql.in.c index f7debddbd..e546c3b42 100644 --- a/raster/rt_pg/rtpostgis_drop.sql.in.c +++ b/raster/rt_pg/rtpostgis_drop.sql.in.c @@ -247,3 +247,14 @@ CREATE OR REPLACE FUNCTION _rename_raster_tables() $$ LANGUAGE 'plpgsql' VOLATILE; SELECT _rename_raster_tables(); DROP FUNCTION IF EXISTS _rename_raster_tables(); + +-- functions no longer supported +DROP FUNCTION IF EXISTS AddRasterColumn(varchar, varchar, varchar, varchar, integer, varchar[], boolean, boolean, double precision[], double precision, double precision, integer, integer, geometry); +DROP FUNCTION IF EXISTS AddRasterColumn(varchar, varchar, varchar, integer, varchar[], boolean, boolean, double precision[], double precision, double precision, integer, integer, geometry); +DROP FUNCTION IF EXISTS AddRasterColumn(varchar, varchar, integer, varchar[], boolean, boolean, double precision[], double precision, double precision, integer, integer, geometry); +DROP FUNCTION IF EXISTS DropRasterColumn(varchar, varchar, varchar, varchar); +DROP FUNCTION IF EXISTS DropRasterColumn(varchar, varchar, varchar); +DROP FUNCTION IF EXISTS DropRasterColumn(varchar, varchar); +DROP FUNCTION IF EXISTS DropRasterTable(varchar, varchar, varchar); +DROP FUNCTION IF EXISTS DropRasterTable(varchar, varchar); +DROP FUNCTION IF EXISTS DropRasterTable(varchar); -- 2.40.0