ST_GeomFromText function
The ST_GeomFromText function takes a well-known text representation of a geometry and, optionally, a spatial reference system identifier as input parameters and returns the corresponding geometry.
If the given well-known text representation is null, then null is returned.
The preferred version for this functionality is ST_Geometry.
Syntax
Parameter
- wkt
- A value of type CLOB(2G) that contains the well-known text representation of the resulting geometry.
- srs_id
- A value of type INTEGER that identifies the spatial reference
system for the resulting geometry.
If the srs_id parameter is omitted, the spatial reference system with the numeric identifier 0 (zero) is used implicitly.
If srs_id does not identify a spatial reference system listed in the catalog view DB2GSE.ST_SPATIAL_REFERENCE_SYSTEMS, then an error is returned (SQLSTATE 38SU1).
Return type
db2gse.ST_Geometry
Example
In the following examples, the lines of results have been reformatted for readability. The spacing in your results will vary according to your online display.
In this example the ST_GeomFromText function is used to create and insert a point from a well known text (WKT) point representation.
SET CURRENT FUNCTION PATH = CURRENT FUNCTION PATH, db2gse
CREATE TABLE sample_geometries(id INTEGER, geometry ST_GEOMETRY)
INSERT INTO sample_geometries(id, geometry)
VALUES
(1251, ST_GeomFromText('point(1 2)', 1) ),
(1252, ST_GeomFromText('linestring(33 2, 34 3, 35 6)', 1) ),
(1253, ST_GeomFromText('polygon((3 3, 4 6, 5 3, 3 3))', 1))
The following SELECT statement will return the ID and
GEOMETRIES from the SAMPLE_GEOMETRIES table.
SELECT id, cast(geometry..ST_AsText AS varchar(105))
AS geometry
FROM sample_geometries
Results:
ID GEOMETRY
----------- ---------------------------------------------------------------
1251 POINT ( 1.00000000 2.00000000)
1252 LINESTRING ( 33.00000000 2.00000000, 34.00000000 3.00000000,
35.00000000 6.00000000)
1253 POLYGON (( 3.00000000 3.00000000, 5.00000000 3.00000000,
4.00000000 6.00000000, 3.00000000 3.00000000))