1--source include/have_innodb.inc
2--source include/have_debug.inc
3--source include/have_geometry.inc
4--source include/have_innodb_4k.inc
5
6############################################################################################
7# Creating the spatial objects                                                             #
8############################################################################################
9
10--echo # Creating the spatial objects
11USE test;
12
13CREATE TABLE gis_point (fid INTEGER NOT NULL PRIMARY KEY, g POINT);
14CREATE TABLE gis_linestring (fid INTEGER NOT NULL PRIMARY KEY, g LINESTRING);
15CREATE TABLE gis_polygon (fid INTEGER NOT NULL PRIMARY KEY, g POLYGON);
16CREATE TABLE gis_multi_point (fid INTEGER NOT NULL PRIMARY KEY, g MULTIPOINT);
17CREATE TABLE gis_multi_linestring (fid INTEGER NOT NULL PRIMARY KEY, g MULTILINESTRING);
18CREATE TABLE gis_multi_polygon (fid INTEGER NOT NULL PRIMARY KEY, g MULTIPOLYGON);
19CREATE TABLE gis_geometrycollection (fid INTEGER NOT NULL PRIMARY KEY, g GEOMETRYCOLLECTION);
20
21############################################################################################
22# Inserting the values specific to the spatial objects                                     #
23############################################################################################
24
25--echo # Inserting POINT Geometry Values
26INSERT INTO gis_point VALUES
27    (101, ST_POINTFROMTEXT('POINT(0 0)')),
28    (102, ST_POINTFROMTEXT('POINT(1 0)')),
29    (103, ST_POINTFROMTEXT('POINT(0 1)')),
30    (104, ST_POINTFROMTEXT('POINT(1 1)')),
31    (105, ST_POINTFROMTEXT('POINT(-1 1)'));
32
33INSERT INTO gis_point VALUES
34    (106, ST_POINTFROMWKB(POINT(0,0))),
35    (107, ST_POINTFROMWKB(POINT(10,0))),
36    (108, ST_POINTFROMWKB(POINT(0,10))),
37    (109, ST_POINTFROMWKB(POINT(-10,0))),
38    (110, ST_POINTFROMWKB(POINT(0,-10)));
39
40INSERT INTO gis_point VALUES
41    (111, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(1 1)')))),
42    (112, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(1e308 1e308)')))),
43    (113, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(1e308 -1e308)')))),
44    (114, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(-1e308 1e308)')))),
45    (115, ST_POINTFROMWKB(ST_ASWKB(ST_POINTFROMTEXT('POINT(-1e308 -1e308)'))));
46
47--echo # Inserting LINESTRING Geometry Values
48INSERT INTO gis_linestring VALUES
49    (201, ST_LINEFROMTEXT('LINESTRING(0 0,5 5)')),
50    (202, ST_LINEFROMTEXT('LINESTRING(0 0,2 2,4 4)')),
51    (203, ST_LINEFROMTEXT('LINESTRING(0 0,5 5,10 10)'));
52
53INSERT INTO gis_linestring VALUES
54    (204, ST_LINESTRINGFROMTEXT('LINESTRING(10 10,5 5)')),
55    (205, ST_LINESTRINGFROMTEXT('LINESTRING(0 0,12 12,24 24)')),
56    (206, ST_LINESTRINGFROMTEXT('LINESTRING(0 0,50 50,100 100)'));
57
58INSERT INTO gis_linestring VALUES
59    (207, ST_LINEFROMWKB(LINESTRING(POINT(0,0), POINT(5,5)))),
60    (208, ST_LINEFROMWKB(LINESTRING(POINT(0,0), POINT(-5,-5), POINT(-10,10)))),
61    (209, ST_LINEFROMWKB(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8))));
62
63INSERT INTO gis_linestring VALUES
64    (210, ST_LINESTRINGFROMWKB(LINESTRING(POINT(0,0), POINT(5,5)))),
65    (211, ST_LINESTRINGFROMWKB(LINESTRING(POINT(0,0), POINT(-50,-50), POINT(10,-10)))),
66    (212, ST_LINESTRINGFROMWKB(LINESTRING(POINT(0,0), POINT(1e308,1e308), POINT(1e308,-1e308))));
67
68INSERT INTO gis_linestring VALUES
69    (213, ST_LINEFROMWKB(ST_ASWKB(ST_LINEFROMTEXT('LINESTRING(1e308 1e308,1e308 -1e308)')))),
70    (214, ST_LINEFROMWKB(ST_ASWKB(ST_LINEFROMTEXT('LINESTRING(1 1,2 2,3 3,4 4,5 5,6 6,7 7,8 8,9 9)')))),
71    (215, ST_LINESTRINGFROMWKB(ST_ASWKB(ST_LINESTRINGFROMTEXT('LINESTRING(10 10,10 -10,-10 -10,-10 10,10 10)'))));
72
73--echo # Inserting POLYGON Geometry Values
74INSERT INTO gis_polygon VALUES
75    (301, ST_POLYFROMTEXT('POLYGON((0 0,0 5,5 5,0 0))')),
76    (302, ST_POLYFROMTEXT('POLYGON((0 0,0 5,5 5,5 0,0 0))')),
77    (303, ST_POLYFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0))'));
78
79INSERT INTO gis_polygon VALUES
80    (304, ST_POLYGONFROMTEXT('POLYGON((0 0,0 50,50 50,50 0,0 0))')),
81    (305, ST_POLYGONFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,0 0,0 0),(4 4,4 6,6 6,6 4,4 4))')),
82    (306, ST_POLYGONFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,0 0,0 0),(2 2,2 4,4 4,4 2,2 2),(6 6,6 8,8 8,8 6,6 6))'));
83
84INSERT INTO gis_polygon VALUES
85    (307, ST_POLYFROMWKB(POLYGON(LINESTRING(POINT(0,0), POINT(0,5), POINT(5,5), POINT(0,0))))),
86    (308, ST_POLYFROMWKB(POLYGON(LINESTRING(POINT(0,0), POINT(0,15), POINT(15,15), POINT(15,0), POINT(0,0))))),
87    (309, ST_POLYFROMWKB(POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
88                                 LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4)))));
89
90INSERT INTO gis_polygon VALUES
91    (310, ST_POLYGONFROMWKB(POLYGON(LINESTRING(POINT(0,0), POINT(0,5), POINT(5,5), POINT(0,0))))),
92    (311, ST_POLYGONFROMWKB(POLYGON(LINESTRING(POINT(10,10), POINT(10,15), POINT(15,15), POINT(15,10), POINT(10,10))))),
93    (312, ST_POLYGONFROMWKB(POLYGON(LINESTRING(POINT(10,10), POINT(10,20), POINT(20,20), POINT(20,10), POINT(10,10)),
94                                    LINESTRING(POINT(14,14), POINT(14,16), POINT(16,16), POINT(16,14), POINT(14,14)))));
95
96INSERT INTO gis_polygon VALUES
97    (313, ST_POLYFROMWKB(ST_ASWKB(ST_POLYFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,0 0,5 5,0 0))')))),
98    (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))')))),
99    (315, ST_POLYGONFROMWKB(ST_ASWKB(ST_POLYGONFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,0 0,0 0),(2 2,2 4,4 4,4 2,2 2),(6 6,6 8,8 8,8 6,6 6))'))));
100
101--echo # Inserting MULTIPOINT Geometry Values
102INSERT INTO gis_multi_point VALUES
103    (401, ST_GEOMFROMTEXT('MULTIPOINT(0 0)')),
104    (402, ST_GEOMFROMTEXT('MULTIPOINT(0 0,2 2,4 4)')),
105    (403, ST_GEOMFROMTEXT('MULTIPOINT(0 0,5 5,10 10)'));
106
107INSERT INTO gis_multi_point VALUES
108    (404, ST_GEOMFROMTEXT('MULTIPOINT(0 0,100 100)')),
109    (405, ST_GEOMFROMTEXT('MULTIPOINT(0 0,1e308 1e308)')),
110    (406, ST_GEOMFROMTEXT('MULTIPOINT(1e308 1e308,1e308 -1e308,-1e308 1e308,-1e308 -1e308)'));
111
112INSERT INTO gis_multi_point VALUES
113    (407, ST_GEOMFROMWKB(MULTIPOINT(POINT(0,0)))),
114    (408, ST_GEOMFROMWKB(MULTIPOINT(POINT(0,0), POINT(10,10)))),
115    (409, ST_GEOMFROMWKB(MULTIPOINT(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6))));
116
117INSERT INTO gis_multi_point VALUES
118    (410, ST_GEOMFROMWKB(MULTIPOINT(POINT(0,0)))),
119    (411, ST_GEOMFROMWKB(MULTIPOINT(POINT(0,0), POINT(1e308,1e308)))),
120    (412, ST_GEOMFROMWKB(MULTIPOINT(POINT(1e308,1e308), POINT(-1e308,1e308), POINT(1e308,-1e308), POINT(-1e308,-1e308))));
121
122INSERT INTO gis_multi_point VALUES
123    (413, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOINT(0 0)')))),
124    (414, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOINT(0 0,1e308 1e308,-1e308 -1e308)')))),
125    (415, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOINT(1e308 1e308,1e308 -1e308,-1e308 1e308,-1e308 -1e308,1e308 1e308)'))));
126
127--echo # Inserting MULTILINESTRING Geometry Values
128INSERT INTO gis_multi_linestring VALUES
129    (501, ST_GEOMFROMTEXT('MULTILINESTRING((0 0,2 2))')),
130    (502, ST_GEOMFROMTEXT('MULTILINESTRING((0 0,2 2,4 4))')),
131    (503, ST_GEOMFROMTEXT('MULTILINESTRING((0 0,2 2,4 4),(6 6,8 8,10 10))'));
132
133INSERT INTO gis_multi_linestring VALUES
134    (504, ST_GEOMFROMTEXT('MULTILINESTRING((0 0,100 100,-100 -100))')),
135    (505, ST_GEOMFROMTEXT('MULTILINESTRING((1e308 1e308,-1e308 -1e308))')),
136    (506, ST_GEOMFROMTEXT('MULTILINESTRING((1e308 1e308,-1e308 -1e308),(1e308 -1e308,-1e308 1e308))'));
137
138INSERT INTO gis_multi_linestring VALUES
139    (507, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2))))),
140    (508, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(12,12), POINT(24,24))))),
141    (509, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4)),
142                                          LINESTRING(POINT(6,6), POINT(8,8), POINT(10,10)))));
143
144INSERT INTO gis_multi_linestring VALUES
145    (510, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4))))),
146    (511, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(1,1), POINT(2,2))))),
147    (512, ST_GEOMFROMWKB(MULTILINESTRING(LINESTRING(POINT(0,0), POINT(12,12), POINT(24,24)),
148                                                    LINESTRING(POINT(36,36), POINT(48,48), POINT(50,50)))));
149
150INSERT INTO gis_multi_linestring VALUES
151    (513, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10),(0 10,10 0))')))),
152    (514, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10,-10 10,0 0),(0 0,-10 -10,10 -10,0 0))')))),
153    (515, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,0 100),(0 0,100 0),(0 0,0 -100),(0 0,-100 0))'))));
154
155--echo # Inserting MULTIPOLGYON Geometry Values
156INSERT INTO gis_multi_polygon VALUES
157    (601, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)))')),
158    (602, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)),((5 5,5 10,10 10,5 5)))')),
159    (603, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0,0 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'));
160
161INSERT INTO gis_multi_polygon VALUES
162    (604, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)))')),
163    (605, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0,0 0,0 0),(4 4,4 6,6 6,6 4,4 4)),((0 0,0 -2,-2 -2,0 0)))')),
164    (606, ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,5 5,-5 5,0 0)),((0 0,-5 -5,5 -5,0 0)))'));
165
166INSERT INTO gis_multi_polygon VALUES
167    (607, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(5,0), POINT(5,5), POINT(0,5), POINT(0,0)))))),
168    (608, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(10,0), POINT(10,10), POINT(0,10), POINT(0,0)),
169                                               LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4)))))),
170    (609, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(5,0), POINT(5,5), POINT(0,5), POINT(0,0))),
171                                       POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0))))));
172
173INSERT INTO gis_multi_polygon VALUES
174    (610, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0)))))),
175    (611, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(10,10), POINT(20,10), POINT(20,20), POINT(10,20), POINT(10,10)),
176                                                      LINESTRING(POINT(14,14), POINT(14,16), POINT(16,16), POINT(16,14), POINT(14,14)))))),
177    (612, ST_GEOMFROMWKB(MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
178                                                      LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
179                                              POLYGON(LINESTRING(POINT(0,0), POINT(-5,0), POINT(-5,-5), POINT(0,-5), POINT(0,0))))));
180
181INSERT INTO gis_multi_polygon VALUES
182    (613, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,5 5,5 -5,0 0)),((0 0,-5 5,-5 -5,0 0)))')))),
183    (614, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,10 10,-10 10,0 0)),((0 0,-10 -10,10 -10,0 0)))')))),
184    (615, ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,5 5,10 0,5 -5,0 0)))'))));
185
186--echo # Inserting GEOMETRYCOLLECTION Geometry Values
187INSERT INTO gis_geometrycollection VALUES
188    (701, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0))')),
189    (702, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
190    (703, ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(5 5), POLYGON((0 0,0 10,10 10,10 0,0 0)))'));
191
192INSERT INTO gis_geometrycollection VALUES
193    (704, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
194    (705, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
195                                                           'LINESTRING(0 0,10 10),'
196                                                           'POLYGON((0 0,0 10,10 10,10 0,0 0,0 0, 0 0)))')),
197    (706, ST_GEOMETRYCOLLECTIONFROMTEXT('GEOMETRYCOLLECTION(MULTIPOINT(0 0,5 5,10 10),'
198                                                           'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
199                                                           'MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),'
200                                                                        '((0 0,-10 0,-10 -10,0 -10,0 0))))'));
201
202INSERT INTO gis_geometrycollection VALUES
203    (707, ST_GEOMCOLLFROMWKB(GEOMETRYCOLLECTION(POINT(0,0)))),
204    (708, ST_GEOMCOLLFROMWKB(GEOMETRYCOLLECTION(POINT(0,0),
205                                                LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
206                                                POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
207                                                        LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4)))))),
208    (709, ST_GEOMCOLLFROMWKB(GEOMETRYCOLLECTION(MULTIPOINT(POINT(0,0), POINT(5,5), POINT(10,10)),
209                                                MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
210                                                                LINESTRING(POINT(10,10), POINT(5,5), POINT(0,10))),
211                                                MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
212                                                                     LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
213                                                             POLYGON(LINESTRING(POINT(0,0), POINT(-10,0), POINT(-10,-10), POINT(0,0)))))));
214
215INSERT INTO gis_geometrycollection VALUES
216    (710, ST_GEOMETRYCOLLECTIONFROMWKB(GEOMETRYCOLLECTION(POINT(0,0),
217                                                          LINESTRING(POINT(0,0), POINT(100,100))))),
218    (711, ST_GEOMETRYCOLLECTIONFROMWKB(GEOMETRYCOLLECTION(POINT(10,10),
219                                                          LINESTRING(POINT(10,10), POINT(12,12), POINT(14,14), POINT(16,16), POINT(18,18)),
220                                                          POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
221                                                                  LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4)))))),
222    (712, ST_GEOMETRYCOLLECTIONFROMWKB(GEOMETRYCOLLECTION(MULTIPOINT(POINT(10,10), POINT(15,15), POINT(20,20)),
223                                                          MULTILINESTRING(LINESTRING(POINT(0,0), POINT(2,2), POINT(4,4), POINT(6,6), POINT(8,8)),
224                                                                          LINESTRING(POINT(10,10), POINT(5,5), POINT(0,10))),
225                                                          MULTIPOLYGON(POLYGON(LINESTRING(POINT(0,0), POINT(0,10), POINT(10,10), POINT(10,0), POINT(0,0)),
226                                                                               LINESTRING(POINT(4,4), POINT(4,6), POINT(6,6), POINT(6,4), POINT(4,4))),
227                                                                       POLYGON(LINESTRING(POINT(0,0), POINT(-10,0), POINT(-10,-10), POINT(0,0)))))));
228
229INSERT INTO gis_geometrycollection VALUES
230    (713, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
231                                                                'POINT(0 0),'
232                                                                'LINESTRING(0 0,10 10),'
233                                                                'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
234                                                                'MULTIPOINT(0 0,2 2,4 4,6 6,8 8,10 10),'
235                                                                'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
236                                                                'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5))))')))),
237    (714, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
238                                                                'GEOMETRYCOLLECTION('
239                                                                      'POINT(0 0)),'
240                                                                'GEOMETRYCOLLECTION('
241                                                                      'LINESTRING(0 0,10 10)),'
242                                                                'GEOMETRYCOLLECTION('
243                                                                      'POLYGON((0 0,0 10,10 10,10 0,0 0))),'
244                                                                'GEOMETRYCOLLECTION('
245                                                                       'MULTIPOINT(0 0,2 2,4 4,6 6,8 8,10 10)),'
246                                                                'GEOMETRYCOLLECTION('
247                                                                       'MULTILINESTRING((0 0,10 10),(0 10,10 0))),'
248                                                                'GEOMETRYCOLLECTION('
249                                                                       'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5)))))')))),
250    (715, ST_GEOMCOLLFROMWKB(ST_ASWKB(ST_GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION('
251                                                                'GEOMETRYCOLLECTION(),'
252                                                                'POINT(0 0),'
253                                                                'GEOMETRYCOLLECTION('
254                                                                      'LINESTRING(0 0,10 10),'
255                                                                      'GEOMETRYCOLLECTION('
256                                                                            'GEOMETRYCOLLECTION())),'
257                                                                'GEOMETRYCOLLECTION(),'
258                                                                'GEOMETRYCOLLECTION('
259                                                                       'GEOMETRYCOLLECTION()),'
260                                                                'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
261                                                                'MULTIPOINT(0 0,2 2,4 4,6 6,8 8,10 10),'
262                                                                'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
263                                                                'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((5 5,5 10,10 10,10 5,5 5))))'))));
264
265############################################################################################
266# Checking spatial index with geometry data                                                #
267############################################################################################
268
269--echo # Creating a table with spatial index column
270CREATE TABLE geom_index (fid INTEGER NOT NULL PRIMARY KEY, g GEOMETRY NOT NULL, SPATIAL INDEX(g));
271
272--echo # Inserting geometry values
273INSERT INTO geom_index SELECT * FROM gis_point;
274
275INSERT INTO geom_index SELECT * FROM gis_linestring;
276
277INSERT INTO geom_index SELECT * FROM gis_polygon;
278
279INSERT INTO geom_index SELECT * FROM gis_multi_point;
280
281INSERT INTO geom_index SELECT * FROM gis_multi_linestring;
282
283INSERT INTO geom_index SELECT * FROM gis_multi_polygon;
284
285INSERT INTO geom_index SELECT * FROM gis_geometrycollection;
286
287check table geom_index;
288
289--echo # Final cleanup
290DROP TABLE gis_point;
291DROP TABLE gis_linestring;
292DROP TABLE gis_polygon;
293DROP TABLE gis_multi_point;
294DROP TABLE gis_multi_linestring;
295DROP TABLE gis_multi_polygon;
296DROP TABLE gis_geometrycollection;
297DROP TABLE geom_index;
298