Spatial table constraints names get column name appended.

rename_geometry_table_constraints() obsoleted.


git-svn-id: http://svn.osgeo.org/postgis/trunk@683 b70326c6-7e19-0410-871a-916f4a2858ee
This commit is contained in:
Sandro Santilli 2004-08-18 08:26:32 +00:00
parent c6924639f4
commit a0f200aae7

View file

@ -417,34 +417,17 @@ LANGUAGE 'sql' WITH (iscachable,isstrict);
----------------------------------------------------------------------- -----------------------------------------------------------------------
-- RENAME_GEOMETRY_TABLE_CONSTRAINTS() -- RENAME_GEOMETRY_TABLE_CONSTRAINTS()
----------------------------------------------------------------------- -----------------------------------------------------------------------
-- Rename SRID checks to enforce_srid -- This function has been obsoleted for the difficulty in
-- Rename TYPE checks to enforce_geotype -- finding attribute on which the constraint is applied.
-- AddGeometryColumn will name the constraints in a meaningful
-- way, but nobody can rely on it since old postgis versions did
-- not do that.
----------------------------------------------------------------------- -----------------------------------------------------------------------
CREATEFUNCTION rename_geometry_table_constraints() RETURNS text CREATEFUNCTION rename_geometry_table_constraints() RETURNS text
AS AS
' '
DECLARE SELECT ''rename_geometry_table_constraint() is obsoleted''::text
fixed_srid integer; ' LANGUAGE 'SQL';
fixed_type integer;
BEGIN
UPDATE pg_constraint SET conname = ''enforce_geotype''
WHERE consrc like
''((geometrytype(%) = ''''%''''::text) OR (% IS NULL))''
AND conname != ''enforce_geotype'';
GET DIAGNOSTICS fixed_type = ROW_COUNT;
UPDATE pg_constraint SET conname = ''enforce_srid''
WHERE consrc like
''(srid(% = %)''
AND conname != ''enforce_srid'';
GET DIAGNOSTICS fixed_srid = ROW_COUNT;
RETURN ''fixed srid_checks:''||fixed_srid||
'' type_checks:''||fixed_type;
END;
' LANGUAGE 'plpgsql';
----------------------------------------------------------------------- -----------------------------------------------------------------------
-- FIX_GEOMETRY_COLUMNS() -- FIX_GEOMETRY_COLUMNS()
@ -2329,7 +2312,8 @@ BEGIN
#else #else
quote_ident(table_name) quote_ident(table_name)
#endif #endif
|| '' ADD CONSTRAINT enforce_srid CHECK (SRID('' || quote_ident(column_name) || || '' ADD CONSTRAINT "enforce_srid_'' ||
column_name || ''" CHECK (SRID('' || quote_ident(column_name) ||
'') = '' || new_srid || '')'' ; '') = '' || new_srid || '')'' ;
IF (not(new_type = ''GEOMETRY'')) THEN IF (not(new_type = ''GEOMETRY'')) THEN
@ -2339,7 +2323,8 @@ BEGIN
#else #else
quote_ident(table_name) quote_ident(table_name)
#endif #endif
|| '' ADD CONSTRAINT enforce_geotype CHECK (geometrytype('' || || '' ADD CONSTRAINT "enforce_geotype_'' ||
column_name || ''" CHECK (geometrytype('' ||
quote_ident(column_name) || '')='' || quote_ident(column_name) || '')='' ||
quote_literal(new_type) || '' OR ('' || quote_literal(new_type) || '' OR ('' ||
quote_ident(column_name) || '') is null)''; quote_ident(column_name) || '') is null)'';