1210 lines
46 KiB
Plaintext
1210 lines
46 KiB
Plaintext
# Creating the spatial objects
|
|
CREATE TABLE gis_point_srid (fid INTEGER NOT NULL PRIMARY KEY, g POINT);
|
|
CREATE TABLE gis_linestring_srid (fid INTEGER NOT NULL PRIMARY KEY, g LINESTRING);
|
|
CREATE TABLE gis_polygon_srid (fid INTEGER NOT NULL PRIMARY KEY, g POLYGON);
|
|
CREATE TABLE gis_multi_point_srid (fid INTEGER NOT NULL PRIMARY KEY, g MULTIPOINT);
|
|
CREATE TABLE gis_multi_linestring_srid (fid INTEGER NOT NULL PRIMARY KEY, g MULTILINESTRING);
|
|
CREATE TABLE gis_multi_polygon_srid (fid INTEGER NOT NULL PRIMARY KEY, g MULTIPOLYGON);
|
|
CREATE TABLE gis_geometrycollection_srid (fid INTEGER NOT NULL PRIMARY KEY, g GEOMETRYCOLLECTION);
|
|
# Inserting POINT Geometry Values
|
|
INSERT INTO gis_point_srid VALUES
|
|
(101, ST_POINTFROMTEXT('POINT(0 0)')),
|
|
(102, ST_POINTFROMTEXT('POINT(1 0)')),
|
|
(103, ST_POINTFROMTEXT('POINT(0 1)')),
|
|
(104, ST_POINTFROMTEXT('POINT(1 1)')),
|
|
(105, ST_POINTFROMTEXT('POINT(-1 1)'));
|
|
INSERT INTO gis_point_srid VALUES
|
|
(106, ST_POINTFROMWKB(ST_ASWKB(POINT(0,0)))),
|
|
(107, ST_POINTFROMWKB(ST_ASWKB(POINT(10,0)))),
|
|
(108, ST_POINTFROMWKB(ST_ASWKB(POINT(0,10)))),
|
|
(109, ST_POINTFROMWKB(ST_ASWKB(POINT(-10,0)))),
|
|
(110, ST_POINTFROMWKB(ST_ASWKB(POINT(0,-10))));
|
|
INSERT INTO gis_point_srid VALUES
|
|
(111, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(1 1)'))));
|
|
# Retrieving table of POINT geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_point_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
POINT(0 0) 0
|
|
POINT(1 0) 0
|
|
POINT(0 1) 0
|
|
POINT(1 1) 0
|
|
POINT(-1 1) 0
|
|
POINT(0 0) 0
|
|
POINT(10 0) 0
|
|
POINT(0 10) 0
|
|
POINT(-10 0) 0
|
|
POINT(0 -10) 0
|
|
POINT(1 1) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g)
|
|
# returns a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_point_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
POINT(0 0) 4326
|
|
POINT(0 1) 4326
|
|
POINT(1 0) 4326
|
|
POINT(1 1) 4326
|
|
POINT(1 -1) 4326
|
|
POINT(0 0) 4326
|
|
POINT(0 10) 4326
|
|
POINT(10 0) 4326
|
|
POINT(0 -10) 4326
|
|
POINT(-10 0) 4326
|
|
POINT(1 1) 4326
|
|
# Inserting LINESTRING Geometry Values
|
|
INSERT INTO gis_linestring_srid VALUES
|
|
(201, ST_LINEFROMTEXT('LINESTRING(0 0,5 5)')),
|
|
(202, ST_LINEFROMTEXT('LINESTRING(0 0,2 2,4 4)')),
|
|
(203, ST_LINEFROMTEXT('LINESTRING(0 0,5 5,10 10)'));
|
|
INSERT INTO gis_linestring_srid VALUES
|
|
(204, ST_LINESTRINGFROMTEXT('LINESTRING(10 10,5 5)')),
|
|
(205, ST_LINESTRINGFROMTEXT('LINESTRING(0 0,12 12,24 24)')),
|
|
(206, ST_LINESTRINGFROMTEXT('LINESTRING(0 0,50 50,90 90)'));
|
|
INSERT INTO gis_linestring_srid VALUES
|
|
(207, ST_LINEFROMWKB(ST_ASWKB(LINESTRING(POINT(0,0), POINT(5,5))))),
|
|
(208, ST_LINEFROMWKB(ST_ASWKB(LINESTRING(POINT(0,0), POINT(-5,-5), POINT(-10,10))))),
|
|
(209, ST_LINEFROMWKB(ST_ASWKB(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)))));
|
|
INSERT INTO gis_linestring_srid VALUES
|
|
(210, ST_LINESTRINGFROMWKB(ST_ASWKB(LINESTRING(POINT(0,0), POINT(5,5))))),
|
|
(211, ST_LINESTRINGFROMWKB(ST_ASWKB(LINESTRING(POINT(0,0), POINT(-50,-50), POINT(10,-10)))));
|
|
# Retrieving table of LINESTRING geometries and SRID values (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_linestring_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
LINESTRING(0 0,5 5) 0
|
|
LINESTRING(0 0,2 2,4 4) 0
|
|
LINESTRING(0 0,5 5,10 10) 0
|
|
LINESTRING(10 10,5 5) 0
|
|
LINESTRING(0 0,12 12,24 24) 0
|
|
LINESTRING(0 0,50 50,90 90) 0
|
|
LINESTRING(0 0,5 5) 0
|
|
LINESTRING(0 0,-5 -5,-10 10) 0
|
|
LINESTRING(0 0,2 2,4 4,6 6,8 8) 0
|
|
LINESTRING(0 0,5 5) 0
|
|
LINESTRING(0 0,-50 -50,10 -10) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g)
|
|
# returns a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_linestring_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
LINESTRING(0 0,5 5) 4326
|
|
LINESTRING(0 0,2 2,4 4) 4326
|
|
LINESTRING(0 0,5 5,10 10) 4326
|
|
LINESTRING(10 10,5 5) 4326
|
|
LINESTRING(0 0,12 12,24 24) 4326
|
|
LINESTRING(0 0,50 50,90 90) 4326
|
|
LINESTRING(0 0,5 5) 4326
|
|
LINESTRING(0 0,-5 -5,10 -10) 4326
|
|
LINESTRING(0 0,2 2,4 4,6 6,8 8) 4326
|
|
LINESTRING(0 0,5 5) 4326
|
|
LINESTRING(0 0,-50 -50,-10 10) 4326
|
|
# Inserting POLYGON Geometry Values
|
|
INSERT INTO gis_polygon_srid VALUES
|
|
(301, ST_POLYFROMTEXT('POLYGON((0 0,5 5,0 5, 0 0))')),
|
|
(302, ST_POLYFROMTEXT('POLYGON((0 0,5 0,5 5,0 5,0 0))')),
|
|
(303, ST_POLYFROMTEXT('POLYGON((0 0,10 0,10 10,0 10,0 0))'));
|
|
INSERT INTO gis_polygon_srid VALUES
|
|
(304, ST_POLYGONFROMTEXT('POLYGON((0 0,50 0,50 50,0 50,0 0))')),
|
|
(305, ST_POLYGONFROMTEXT('POLYGON((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4))')),
|
|
(306, ST_POLYGONFROMTEXT('POLYGON((0 0,10 0,10 10,0 10,0 0),(2 2,2 4,4 4,4 2,2 2),(6 6,6 8,8 8,8 6,6 6))'));
|
|
INSERT INTO gis_polygon_srid VALUES
|
|
(307, ST_POLYFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(0,0), POINT(5,5), POINT(0,5), POINT(0,0)))))),
|
|
(308, ST_POLYFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(0,0), POINT(15,0), POINT(15,15), POINT(0,15), POINT(0,0)))))),
|
|
(309, ST_POLYFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))))));
|
|
INSERT INTO gis_polygon_srid VALUES
|
|
(310, ST_POLYGONFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(0,0), POINT(5,5), POINT(0,5), POINT(0,0)))))),
|
|
(311, ST_POLYGONFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(10,10), POINT(15,10), POINT(15,15), POINT(10,15), POINT(10,10)))))),
|
|
(312, ST_POLYGONFROMWKB(ST_ASWKB(POLYGON(LINESTRING(POINT(10,10), POINT(20,10), POINT(20,20), POINT(10,20), POINT(10,10)),
|
|
LINESTRING(POINT(14,14), POINT(14,16), POINT(16,16), POINT(16,14), POINT(14,14))))));
|
|
INSERT INTO gis_polygon_srid VALUES
|
|
(313, ST_POLYFROMWKB(ST_ASWKB(ST_POLYFROMTEXT('POLYGON((10 0,10 10,0 10,-10 10,-10 0,-10 -10,0 9,10 -10,10 0))')))),
|
|
(314, ST_POLYFROMWKB(ST_ASWKB(ST_POLYGONFROMTEXT('POLYGON((10 0,10 10,0 10,-10 10,-10 0,-10 -10,0 10,10 -10,10 0))')))),
|
|
(315, ST_POLYGONFROMWKB(ST_ASWKB(ST_POLYGONFROMTEXT('POLYGON((0 0,10 0,10 10,0 10,0 0),(2 2,4 2,4 4,2 4,2 2),(6 6,8 6,8 8,6 8,6 6))'))));
|
|
# Retrieving table of POLYGON geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_polygon_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
POLYGON((0 0,5 5,0 5,0 0)) 0
|
|
POLYGON((0 0,5 0,5 5,0 5,0 0)) 0
|
|
POLYGON((0 0,10 0,10 10,0 10,0 0)) 0
|
|
POLYGON((0 0,50 0,50 50,0 50,0 0)) 0
|
|
POLYGON((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4)) 0
|
|
POLYGON((0 0,10 0,10 10,0 10,0 0),(2 2,2 4,4 4,4 2,2 2),(6 6,6 8,8 8,8 6,6 6)) 0
|
|
POLYGON((0 0,5 5,0 5,0 0)) 0
|
|
POLYGON((0 0,15 0,15 15,0 15,0 0)) 0
|
|
POLYGON((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4)) 0
|
|
POLYGON((0 0,5 5,0 5,0 0)) 0
|
|
POLYGON((10 10,15 10,15 15,10 15,10 10)) 0
|
|
POLYGON((10 10,20 10,20 20,10 20,10 10),(14 14,14 16,16 16,16 14,14 14)) 0
|
|
POLYGON((10 0,10 10,0 10,-10 10,-10 0,-10 -10,0 9,10 -10,10 0)) 0
|
|
POLYGON((10 0,10 10,0 10,-10 10,-10 0,-10 -10,0 10,10 -10,10 0)) 0
|
|
POLYGON((0 0,10 0,10 10,0 10,0 0),(2 2,4 2,4 4,2 4,2 2),(6 6,8 6,8 8,6 8,6 6)) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g)
|
|
# returns a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_polygon_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
POLYGON((0 0,5 5,5 0,0 0)) 4326
|
|
POLYGON((0 0,0 5,5 5,5 0,0 0)) 4326
|
|
POLYGON((0 0,0 10,10 10,10 0,0 0)) 4326
|
|
POLYGON((0 0,0 50,50 50,50 0,0 0)) 4326
|
|
POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4)) 4326
|
|
POLYGON((0 0,0 10,10 10,10 0,0 0),(2 2,4 2,4 4,2 4,2 2),(6 6,8 6,8 8,6 8,6 6)) 4326
|
|
POLYGON((0 0,5 5,5 0,0 0)) 4326
|
|
POLYGON((0 0,0 15,15 15,15 0,0 0)) 4326
|
|
POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4)) 4326
|
|
POLYGON((0 0,5 5,5 0,0 0)) 4326
|
|
POLYGON((10 10,10 15,15 15,15 10,10 10)) 4326
|
|
POLYGON((10 10,10 20,20 20,20 10,10 10),(14 14,16 14,16 16,14 16,14 14)) 4326
|
|
POLYGON((0 10,10 10,10 0,10 -10,0 -10,-10 -10,9 0,-10 10,0 10)) 4326
|
|
POLYGON((0 10,10 10,10 0,10 -10,0 -10,-10 -10,10 0,-10 10,0 10)) 4326
|
|
POLYGON((0 0,0 10,10 10,10 0,0 0),(2 2,2 4,4 4,4 2,2 2),(6 6,6 8,8 8,8 6,6 6)) 4326
|
|
# Inserting MULTIPOINT Geometry Values
|
|
INSERT INTO gis_multi_point_srid VALUES
|
|
(401, ST_MPOINTFROMTEXT('MULTIPOINT((0 0))')),
|
|
(402, ST_MPOINTFROMTEXT('MULTIPOINT((0 0),(2 2),(4 4))')),
|
|
(403, ST_MPOINTFROMTEXT('MULTIPOINT((0 0),(5 5),(10 10))'));
|
|
INSERT INTO gis_multi_point_srid VALUES
|
|
(407, ST_MPOINTFROMWKB(ST_ASWKB(MULTIPOINT(POINT(0,0))))),
|
|
(408, ST_MPOINTFROMWKB(ST_ASWKB(MULTIPOINT(POINT(0,0), POINT(10,10))))),
|
|
(409, ST_MPOINTFROMWKB(ST_ASWKB(MULTIPOINT(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6)))));
|
|
# Retrieving table of MULTIPOINT geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_point_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTIPOINT((0 0)) 0
|
|
MULTIPOINT((0 0),(2 2),(4 4)) 0
|
|
MULTIPOINT((0 0),(5 5),(10 10)) 0
|
|
MULTIPOINT((0 0)) 0
|
|
MULTIPOINT((0 0),(10 10)) 0
|
|
MULTIPOINT((0 0),(2 2),(4 4),(6 6)) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g) returns
|
|
# a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_point_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTIPOINT((0 0)) 4326
|
|
MULTIPOINT((0 0),(2 2),(4 4)) 4326
|
|
MULTIPOINT((0 0),(5 5),(10 10)) 4326
|
|
MULTIPOINT((0 0)) 4326
|
|
MULTIPOINT((0 0),(10 10)) 4326
|
|
MULTIPOINT((0 0),(2 2),(4 4),(6 6)) 4326
|
|
# Inserting MULTILINESTRING Geometry Values
|
|
INSERT INTO gis_multi_linestring_srid VALUES
|
|
(501, ST_MLINEFROMTEXT('MULTILINESTRING((0 0,2 2))')),
|
|
(502, ST_MLINEFROMTEXT('MULTILINESTRING((0 0,2 2,4 4))')),
|
|
(503, ST_MLINEFROMTEXT('MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10))'));
|
|
INSERT INTO gis_multi_linestring_srid VALUES
|
|
(504, ST_MULTILINESTRINGFROMTEXT('MULTILINESTRING((0 0,90 90,-90 -90))'));
|
|
INSERT INTO gis_multi_linestring_srid VALUES
|
|
(507, ST_MLINEFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2)))))),
|
|
(508, ST_MLINEFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(12,12), POINT(24,24)))))),
|
|
(509, ST_MLINEFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4)),
|
|
LINESTRING(POINT(6,6), POINT(8,8), POINT(10,10))))));
|
|
INSERT INTO gis_multi_linestring_srid VALUES
|
|
(510, ST_MULTILINESTRINGFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4)))))),
|
|
(511, ST_MULTILINESTRINGFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(1,1), POINT(2,2)))))),
|
|
(512, ST_MULTILINESTRINGFROMWKB(ST_ASWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(12,12), POINT(24,24)),
|
|
LINESTRING(POINT(36,36), POINT(48,48), POINT(50,50))))));
|
|
INSERT INTO gis_multi_linestring_srid VALUES
|
|
(513, ST_MLINEFROMWKB(ST_ASWKB(ST_MLINEFROMTEXT('MULTILINESTRING((0 0,10 10),(0 10,10 0))')))),
|
|
(514, ST_MLINEFROMWKB(ST_ASWKB(ST_MULTILINESTRINGFROMTEXT('MULTILINESTRING((0 0,10 10,-10 10,0 0),(0 0,-10 -10,10 -10,0 0))')))),
|
|
(515, ST_MULTILINESTRINGFROMWKB(ST_ASWKB(ST_MULTILINESTRINGFROMTEXT('MULTILINESTRING((0 0,0 90),(0 0,90 0),(0 0,0 -90),(0 0,-90 0))'))));
|
|
# Retrieving table of MULTILINESTRING geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_linestring_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTILINESTRING((0 0,2 2)) 0
|
|
MULTILINESTRING((0 0,2 2,4 4)) 0
|
|
MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10)) 0
|
|
MULTILINESTRING((0 0,90 90,-90 -90)) 0
|
|
MULTILINESTRING((0 0,2 2)) 0
|
|
MULTILINESTRING((0 0,12 12,24 24)) 0
|
|
MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10)) 0
|
|
MULTILINESTRING((0 0,2 2,4 4)) 0
|
|
MULTILINESTRING((0 0,1 1,2 2)) 0
|
|
MULTILINESTRING((0 0,12 12,24 24),(36 36,48 48,50 50)) 0
|
|
MULTILINESTRING((0 0,10 10),(0 10,10 0)) 0
|
|
MULTILINESTRING((0 0,10 10,-10 10,0 0),(0 0,-10 -10,10 -10,0 0)) 0
|
|
MULTILINESTRING((0 0,0 90),(0 0,90 0),(0 0,0 -90),(0 0,-90 0)) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_linestring_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTILINESTRING((0 0,2 2)) 4326
|
|
MULTILINESTRING((0 0,2 2,4 4)) 4326
|
|
MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10)) 4326
|
|
MULTILINESTRING((0 0,90 90,-90 -90)) 4326
|
|
MULTILINESTRING((0 0,2 2)) 4326
|
|
MULTILINESTRING((0 0,12 12,24 24)) 4326
|
|
MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10)) 4326
|
|
MULTILINESTRING((0 0,2 2,4 4)) 4326
|
|
MULTILINESTRING((0 0,1 1,2 2)) 4326
|
|
MULTILINESTRING((0 0,12 12,24 24),(36 36,48 48,50 50)) 4326
|
|
MULTILINESTRING((0 0,10 10),(10 0,0 10)) 4326
|
|
MULTILINESTRING((0 0,10 10,10 -10,0 0),(0 0,-10 -10,-10 10,0 0)) 4326
|
|
MULTILINESTRING((0 0,90 0),(0 0,0 90),(0 0,-90 0),(0 0,0 -90)) 4326
|
|
# Inserting MULTIPOLGYON Geometry Values
|
|
INSERT INTO gis_multi_polygon_srid VALUES
|
|
(601, ST_MPOLYFROMTEXT('MULTIPOLYGON(((0 0,5 5,0 5,0 0)))')),
|
|
(602, ST_MPOLYFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)),((5 5,5 10,10 10,5 5)))')),
|
|
(603, ST_MPOLYFROMTEXT('MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,6 4,6 6,4 6,4 4)))'));
|
|
INSERT INTO gis_multi_polygon_srid VALUES
|
|
(604, ST_MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,5 5,0 5, 0 0)))')),
|
|
(605, ST_MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,6 4,6 6,4 6, 4 4)),((0 0,-2 -2,0 -2, 0 0)))')),
|
|
(606, ST_MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,5 5,-5 5,0 0)),((0 0,-5 -5,5 -5,0 0)))'));
|
|
INSERT INTO gis_multi_polygon_srid VALUES
|
|
(607, ST_MPOLYFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(0,5), POINT(5,5), POINT(5,0), POINT(0,0))))))),
|
|
(608, ST_MPOLYFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))))))),
|
|
(609, ST_MPOLYFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(5,0), POINT(5,5), POINT(0,5), POINT(0,0))),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0)))))));
|
|
INSERT INTO gis_multi_polygon_srid VALUES
|
|
(610, ST_MULTIPOLYGONFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0))))))),
|
|
(611, ST_MULTIPOLYGONFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(10,10), POINT(10,20), POINT(20,20), POINT(20,10), POINT(10,10)),
|
|
LINESTRING(POINT(14,14), POINT(14,16), POINT(16,16), POINT(16,14), POINT(14,14))))))),
|
|
(612, ST_MULTIPOLYGONFROMWKB(ST_ASWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0)))))));
|
|
INSERT INTO gis_multi_polygon_srid VALUES
|
|
(613, ST_MPOLYFROMWKB(ST_ASWKB(ST_MPOLYFROMTEXT('MULTIPOLYGON(((0 0,-5 5,5 5,0 0)),((0 0,-5 5,-5 -5,0 0)))')))),
|
|
(614, ST_MPOLYFROMWKB(ST_ASWKB(ST_MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,10 10,-10 10,0 0)),((0 0,-10 -10,10 -10,0 0)))')))),
|
|
(615, ST_MULTIPOLYGONFROMWKB(ST_ASWKB(ST_MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,5 -5,10 0,5 5,0 0)))'))));
|
|
# Retrieving table of MULTIPOLYGON geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_polygon_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTIPOLYGON(((0 0,5 5,0 5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,0 5,5 5,0 0)),((5 5,5 10,10 10,5 5))) 0
|
|
MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,6 4,6 6,4 6,4 4))) 0
|
|
MULTIPOLYGON(((0 0,5 5,0 5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,6 4,6 6,4 6,4 4)),((0 0,-2 -2,0 -2,0 0))) 0
|
|
MULTIPOLYGON(((0 0,5 5,-5 5,0 0)),((0 0,-5 -5,5 -5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0))) 0
|
|
MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4))) 0
|
|
MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((0 0,-5 0,-5 -5,0 -5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,-5 0,-5 -5,0 -5,0 0))) 0
|
|
MULTIPOLYGON(((10 10,10 20,20 20,20 10,10 10),(14 14,14 16,16 16,16 14,14 14))) 0
|
|
MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4)),((0 0,-5 0,-5 -5,0 -5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,-5 5,5 5,0 0)),((0 0,-5 5,-5 -5,0 0))) 0
|
|
MULTIPOLYGON(((0 0,10 10,-10 10,0 0)),((0 0,-10 -10,10 -10,0 0))) 0
|
|
MULTIPOLYGON(((0 0,5 -5,10 0,5 5,0 0))) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g)
|
|
# returns a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_multi_polygon_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
MULTIPOLYGON(((0 0,5 5,5 0,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,5 0,5 5,0 0)),((5 5,10 5,10 10,5 5))) 4326
|
|
MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4))) 4326
|
|
MULTIPOLYGON(((0 0,5 5,5 0,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),((0 0,-2 -2,-2 0,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,5 5,5 -5,0 0)),((0 0,-5 -5,-5 5,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4))) 4326
|
|
MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((0 0,0 -5,-5 -5,-5 0,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,0 -5,-5 -5,-5 0,0 0))) 4326
|
|
MULTIPOLYGON(((10 10,20 10,20 20,10 20,10 10),(14 14,16 14,16 16,14 16,14 14))) 4326
|
|
MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4)),((0 0,0 -5,-5 -5,-5 0,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,5 -5,5 5,0 0)),((0 0,5 -5,-5 -5,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,10 10,10 -10,0 0)),((0 0,-10 -10,-10 10,0 0))) 4326
|
|
MULTIPOLYGON(((0 0,-5 5,0 10,5 5,0 0))) 4326
|
|
# Inserting GEOMETRYCOLLECTION Geometry Values
|
|
INSERT INTO gis_geometrycollection_srid VALUES
|
|
(701, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0))')),
|
|
(702, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
|
|
(703, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(5 5), POLYGON((0 0,10 0,10 10,0 10,0 0)))'));
|
|
INSERT INTO gis_geometrycollection_srid VALUES
|
|
(704, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
|
|
(705, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,10 10),'
|
|
'POLYGON((0 0,10 0,10 10,0 10, 0 0)))')),
|
|
(706, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(MULTIPOINT((0 0),(5 5),(10 10)),'
|
|
'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0)),'
|
|
'((0 0,-10 0,-10 -10,0 -10,0 0))))'));
|
|
INSERT INTO gis_geometrycollection_srid VALUES
|
|
(707, ST_GEOMCOLLFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(POINT(0,0))))),
|
|
(708, ST_GEOMCOLLFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(POINT(0,0),
|
|
LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))))))),
|
|
(709, ST_GEOMCOLLFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(MULTIPOINT(POINT(0,0), POINT(5,5), POINT(10,10)),
|
|
MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
|
|
LINESTRING(POINT(10,10), POINT(5,5), POINT(0,10))),
|
|
MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(-10,0), POINT(-10,-10), POINT(0,0))))))));
|
|
INSERT INTO gis_geometrycollection_srid VALUES
|
|
(710, ST_GEOMETRYCOLLECTIONFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(POINT(0,0),
|
|
LINESTRING(POINT(0,0), POINT(90,90)))))),
|
|
(711, ST_GEOMETRYCOLLECTIONFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(POINT(10,10),
|
|
LINESTRING(POINT(10,10), POINT(12,12), POINT(14,14), POINT(16,16), POINT(18,18)),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))))))),
|
|
(712, ST_GEOMETRYCOLLECTIONFROMWKB(ST_ASWKB(GEOMETRYCOLLECTION(MULTIPOINT(POINT(10,10), POINT(15,15), POINT(20,20)),
|
|
MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
|
|
LINESTRING(POINT(10,10), POINT(5,5), POINT(0,10))),
|
|
MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
|
|
LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
|
|
POLYGON(LINESTRING(POINT(0,0), POINT(-10,0), POINT(-10,-10), POINT(0,0))))))));
|
|
INSERT INTO gis_geometrycollection_srid VALUES
|
|
(713, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
|
|
'POINT(0 0),'
|
|
'LINESTRING(0 0,10 10),'
|
|
'POLYGON((0 0,10 0,10 10,0 10, 0 0)),'
|
|
'MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),'
|
|
'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5))))')))),
|
|
(714, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION('
|
|
'POINT(0 0)),'
|
|
'GEOMETRYCOLLECTION('
|
|
'LINESTRING(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION('
|
|
'POLYGON((0 0,10 0,10 10,0 10, 0 0))),'
|
|
'GEOMETRYCOLLECTION('
|
|
'MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10))),'
|
|
'GEOMETRYCOLLECTION('
|
|
'MULTILINESTRING((0 0,10 10),(0 10,10 0))),'
|
|
'GEOMETRYCOLLECTION('
|
|
'MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5)))))')))),
|
|
(715, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION(),'
|
|
'POINT(0 0),'
|
|
'GEOMETRYCOLLECTION('
|
|
'LINESTRING(0 0,10 10),'
|
|
'GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION())),'
|
|
'GEOMETRYCOLLECTION(),'
|
|
'GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION()),'
|
|
'POLYGON((0 0,10 0,10 10,0 10, 0 0)),'
|
|
'MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),'
|
|
'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5))))'))));
|
|
# Retrieving table of MULTIPOLYGON geometries and SRID values
|
|
# (the latter should be 0 by default)
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_geometrycollection_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
GEOMETRYCOLLECTION(POINT(0 0)) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) 0
|
|
GEOMETRYCOLLECTION(POINT(5 5),POLYGON((0 0,10 0,10 10,0 10,0 0))) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10),POLYGON((0 0,10 0,10 10,0 10,0 0))) 0
|
|
GEOMETRYCOLLECTION(MULTIPOINT((0 0),(5 5),(10 10)),MULTILINESTRING((0 0,10 10),(0 10,10 0)),MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0)),((0 0,-10 0,-10 -10,0 -10,0 0)))) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0)) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,2 2,4 4,6 6,8 8),POLYGON((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4))) 0
|
|
GEOMETRYCOLLECTION(MULTIPOINT((0 0),(5 5),(10 10)),MULTILINESTRING((0 0,2 2,4 4,6 6,8 8),(10 10,5 5,0 10)),MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4)),((0 0,-10 0,-10 -10,0 0)))) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,90 90)) 0
|
|
GEOMETRYCOLLECTION(POINT(10 10),LINESTRING(10 10,12 12,14 14,16 16,18 18),POLYGON((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4))) 0
|
|
GEOMETRYCOLLECTION(MULTIPOINT((10 10),(15 15),(20 20)),MULTILINESTRING((0 0,2 2,4 4,6 6,8 8),(10 10,5 5,0 10)),MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0),(4 4,4 6,6 6,6 4,4 4)),((0 0,-10 0,-10 -10,0 0)))) 0
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10),POLYGON((0 0,10 0,10 10,0 10,0 0)),MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),MULTILINESTRING((0 0,10 10),(0 10,10 0)),MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5)))) 0
|
|
GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(0 0)),GEOMETRYCOLLECTION(LINESTRING(0 0,10 10)),GEOMETRYCOLLECTION(POLYGON((0 0,10 0,10 10,0 10,0 0))),GEOMETRYCOLLECTION(MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10))),GEOMETRYCOLLECTION(MULTILINESTRING((0 0,10 10),(0 10,10 0))),GEOMETRYCOLLECTION(MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5))))) 0
|
|
GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY,POINT(0 0),GEOMETRYCOLLECTION(LINESTRING(0 0,10 10),GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY)),GEOMETRYCOLLECTION EMPTY,GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY),POLYGON((0 0,10 0,10 10,0 10,0 0)),MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),MULTILINESTRING((0 0,10 10),(0 10,10 0)),MULTIPOLYGON(((0 0,5 0,5 5,0 5,0 0)),((5 5,10 5,10 10,5 10,5 5)))) 0
|
|
# Update all fields of the table to have the same SRID
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 4326);
|
|
# Check that SRIDs are now updated, and check that ST_SRID(g) returns
|
|
# a geometry in the second column
|
|
SELECT ST_ASTEXT(g), ST_SRID(g) FROM gis_geometrycollection_srid;
|
|
ST_ASTEXT(g) ST_SRID(g)
|
|
GEOMETRYCOLLECTION(POINT(0 0)) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) 4326
|
|
GEOMETRYCOLLECTION(POINT(5 5),POLYGON((0 0,0 10,10 10,10 0,0 0))) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10),POLYGON((0 0,0 10,10 10,10 0,0 0))) 4326
|
|
GEOMETRYCOLLECTION(MULTIPOINT((0 0),(5 5),(10 10)),MULTILINESTRING((0 0,10 10),(10 0,0 10)),MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((0 0,0 -10,-10 -10,-10 0,0 0)))) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0)) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,2 2,4 4,6 6,8 8),POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4))) 4326
|
|
GEOMETRYCOLLECTION(MULTIPOINT((0 0),(5 5),(10 10)),MULTILINESTRING((0 0,2 2,4 4,6 6,8 8),(10 10,5 5,10 0)),MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4)),((0 0,0 -10,-10 -10,0 0)))) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,90 90)) 4326
|
|
GEOMETRYCOLLECTION(POINT(10 10),LINESTRING(10 10,12 12,14 14,16 16,18 18),POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4))) 4326
|
|
GEOMETRYCOLLECTION(MULTIPOINT((10 10),(15 15),(20 20)),MULTILINESTRING((0 0,2 2,4 4,6 6,8 8),(10 10,5 5,10 0)),MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4)),((0 0,0 -10,-10 -10,0 0)))) 4326
|
|
GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10),POLYGON((0 0,0 10,10 10,10 0,0 0)),MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),MULTILINESTRING((0 0,10 10),(10 0,0 10)),MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5)))) 4326
|
|
GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(0 0)),GEOMETRYCOLLECTION(LINESTRING(0 0,10 10)),GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0))),GEOMETRYCOLLECTION(MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10))),GEOMETRYCOLLECTION(MULTILINESTRING((0 0,10 10),(10 0,0 10))),GEOMETRYCOLLECTION(MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5))))) 4326
|
|
GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY,POINT(0 0),GEOMETRYCOLLECTION(LINESTRING(0 0,10 10),GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY)),GEOMETRYCOLLECTION EMPTY,GEOMETRYCOLLECTION(GEOMETRYCOLLECTION EMPTY),POLYGON((0 0,0 10,10 10,10 0,0 0)),MULTIPOINT((0 0),(2 2),(4 4),(6 6),(8 8),(10 10)),MULTILINESTRING((0 0,10 10),(10 0,0 10)),MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5)))) 4326
|
|
# Try to use ST_SRID with out of range SRID values (Should give error message)
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, -100);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 5094967295);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
# Try to use ST_SRID with incorrect parameter count (>2 or <1)
|
|
UPDATE gis_point_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 4145, 0);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_SRID'
|
|
# Try to use the mutator SRID function with an undefined SRID
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 10101);
|
|
ERROR SR001: There's no spatial reference system with SRID 10101.
|
|
# Testing ST_SRID mutator function with badly formed wkb strings
|
|
# Note: Here the binary representation is applied directly to the
|
|
# mutator ST_SRID function because if other helper functions were
|
|
# to be used, such as ST_GEOMFROMTEXT or similar, then the error
|
|
# would be caught in those functions instead of in the ST_SRID function.
|
|
# Testing with wkb of size less than 13 bytes
|
|
SET @geom_obj_too_short=x'311000000101';
|
|
# Testing with wkb that does not correspond to a valid geometry
|
|
SET @geom_obj_badly_formed=x'311000000101FFFFFF1221111100000011';
|
|
SELECT ST_SRID(@geom_obj_too_short, 4145);
|
|
ERROR 22023: Invalid GIS data provided to function st_srid.
|
|
SELECT ST_SRID(@geom_obj_badly_formed, 4145);
|
|
ERROR 22023: Invalid GIS data provided to function st_srid.
|
|
# Test for geometry = NULL:
|
|
SELECT ST_SRID(g, NULL) FROM gis_point_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_linestring_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_polygon_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_multi_point_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_multi_linestring_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_multi_polygon_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(g, NULL) FROM gis_geometrycollection_srid;
|
|
ST_SRID(g, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
# Test for SRID = NULL:
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_point_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_linestring_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_polygon_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_multi_point_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_multi_linestring_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_multi_polygon_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, 4145) FROM gis_geometrycollection_srid;
|
|
ST_SRID(NULL, 4145)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
# Test for geometry = NULL and SRID = NULL:
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_point_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_linestring_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_polygon_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_multi_point_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_multi_linestring_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_multi_polygon_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
SELECT ST_SRID(NULL, NULL) FROM gis_geometrycollection_srid;
|
|
ST_SRID(NULL, NULL)
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
NULL
|
|
# Setting SRID to minimum value of zero (should be allowed)
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 0);
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 0);
|
|
# Using non-numeric value as SRID (should set SRID as zero)
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_point_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_linestring_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_polygon_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_multi_point_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_multi_linestring_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_multi_polygon_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
SELECT ST_SRID(ST_SRID(g, 'a')) from gis_geometrycollection_srid;
|
|
ST_SRID(ST_SRID(g, 'a'))
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
Warnings:
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
|
# Setting SRID to maximum allowed value of 2^32-1=4294967295
|
|
# (Should return ER_SRS_NOT_FOUND)
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 4294967295);
|
|
ERROR SR001: There's no spatial reference system with SRID 4294967295.
|
|
# Setting SRID to one less than minimum value (-1)
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, -1);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
# Setting SRID to one more than maximum value (4294967296)
|
|
UPDATE gis_point_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_linestring_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_polygon_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_point_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_linestring_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_multi_polygon_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
UPDATE gis_geometrycollection_srid SET g=ST_SRID(g, 4294967296);
|
|
ERROR 22003: SRID value is out of range in 'st_srid'
|
|
# Check that SRID values are set to 0 (and thus haven't been
|
|
# altered by the other boundary case tests
|
|
SELECT ST_SRID(g) FROM gis_point_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_linestring_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_polygon_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_multi_point_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_multi_linestring_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_multi_polygon_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
SELECT ST_SRID(g) FROM gis_geometrycollection_srid;
|
|
ST_SRID(g)
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
0
|
|
# Dropping tables to leave test database in original state
|
|
DROP TABLE gis_point_srid;
|
|
DROP TABLE gis_linestring_srid;
|
|
DROP TABLE gis_polygon_srid;
|
|
DROP TABLE gis_multi_point_srid;
|
|
DROP TABLE gis_multi_linestring_srid;
|
|
DROP TABLE gis_multi_polygon_srid;
|
|
DROP TABLE gis_geometrycollection_srid;
|
|
# Bug 23857035 Test case
|
|
SET @@sql_mode='';
|
|
CREATE TABLE t1 (g GEOMETRY);
|
|
INSERT INTO t1 VALUES (POINT(10, 10)), (NULL);
|
|
SELECT ST_AsText(ST_SRID(g, 4326)) FROM t1;
|
|
ST_AsText(ST_SRID(g, 4326))
|
|
POINT(10 10)
|
|
NULL
|
|
DROP TABLE t1;
|
|
#
|
|
# Bug #27892138 ST_LONGITUD() RETURNS LATITUDE OUT OF RANGE ERROR
|
|
#
|
|
CREATE TABLE t1 (srid INT);
|
|
INSERT INTO t1 VALUES (NULL), (4326);
|
|
SELECT srid, HEX(ST_SRID(POINT(0, 0), srid)) FROM t1;
|
|
srid HEX(ST_SRID(POINT(0, 0), srid))
|
|
NULL NULL
|
|
4326 E6100000010100000000000000000000000000000000000000
|
|
DROP TABLE t1;
|
|
CREATE TABLE t1 (pk INT PRIMARY KEY, g GEOMETRY);
|
|
INSERT INTO t1 VALUES (0, NULL), (1, ST_GEOMFROMTEXT('POINT(0 0)'));
|
|
SELECT pk, ST_SRID(g) FROM t1;
|
|
pk ST_SRID(g)
|
|
0 NULL
|
|
1 0
|
|
SELECT pk, HEX(ST_SRID(g, 4326)) FROM t1;
|
|
pk HEX(ST_SRID(g, 4326))
|
|
0 NULL
|
|
1 E6100000010100000000000000000000000000000000000000
|
|
DROP TABLE t1;
|