$$\r
LANGUAGE 'sql' STABLE STRICT;\r
\r
--- support function to pull out geometry type from constraint check\r
--- will return pretty name instead of ugly name\r
-CREATE OR REPLACE FUNCTION postgis_constraint_type(geomschema text, geomtable text, geomcolumn text) RETURNS varchar AS\r
+CREATE OR REPLACE FUNCTION postgis_constraint_dims(geomschema text, geomtable text, geomcolumn text) RETURNS integer AS\r
$$\r
-SELECT postgis_type_name(replace(split_part(s.consrc, '''', 2), ')', '')::varchar\r
- , postgis_constraint_dims($1,$2,$3), true )\r
+SELECT replace(split_part(s.consrc, ' = ', 2), ')', '')::integer\r
FROM pg_class c, pg_namespace n, pg_attribute a, pg_constraint s\r
WHERE n.nspname = $1\r
AND c.relname = $2\r
AND s.connamespace = n.oid\r
AND s.conrelid = c.oid\r
AND a.attnum = ANY (s.conkey)\r
- AND s.consrc LIKE '%geometrytype(% = %';\r
+ AND s.consrc LIKE '%ndims(% = %';\r
$$\r
LANGUAGE 'sql' STABLE STRICT;\r
\r
-CREATE OR REPLACE FUNCTION postgis_constraint_dims(geomschema text, geomtable text, geomcolumn text) RETURNS integer AS\r
+-- support function to pull out geometry type from constraint check\r
+-- will return pretty name instead of ugly name\r
+CREATE OR REPLACE FUNCTION postgis_constraint_type(geomschema text, geomtable text, geomcolumn text) RETURNS varchar AS\r
$$\r
-SELECT replace(split_part(s.consrc, ' = ', 2), ')', '')::integer\r
+SELECT postgis_type_name(replace(split_part(s.consrc, '''', 2), ')', '')::varchar\r
+ , postgis_constraint_dims($1,$2,$3), true )\r
FROM pg_class c, pg_namespace n, pg_attribute a, pg_constraint s\r
WHERE n.nspname = $1\r
AND c.relname = $2\r
AND s.connamespace = n.oid\r
AND s.conrelid = c.oid\r
AND a.attnum = ANY (s.conkey)\r
- AND s.consrc LIKE '%ndims(% = %';\r
+ AND s.consrc LIKE '%geometrytype(% = %';\r
$$\r
LANGUAGE 'sql' STABLE STRICT;\r
\r
-\r
CREATE OR REPLACE VIEW geometry_columns_v AS \r
SELECT current_database()::varchar(256) AS f_table_catalog, \r
n.nspname::varchar(256) AS f_table_schema, \r