MPointFromShape takes a shape of type multipoint and a spatial reference system identity to return a multipoint.
Syntax
db2gse.MPointFromShape(ShapeMultiPoint (1M), srs db2gse.coordref)
Return type
db2gse.ST_MultiPoint
Examples
This code fragment populates a biologist's SPECIES_SITINGS table.
The SPECIES_SITINGS table is created with three columns. The species and genus columns uniquely identify each row while the sitings multipoint stores the locations of the species sitings.
CREATE TABLE SPECIES_SITINGS (species varchar(32), genus varchar(32), sitings db2gse.ST_MultiPoint); /* Create the SQL insert statement to populate the species, genus and sitings. The question marks are parameter markers that indicate the name and water values that will be retrieved at runtime. */ strcpy (shp_sql,"insert into SPECIES_SITINGS (species,genus,sitings) values (?,?, db2gse.MPointFromShape (cast(? as blob(1m)), db2gse.coordref()..srid(0)))"); /* Allocate memory for the SQL statement handle and associate the statement handle with the connection handle. */ rc = SQLAllocStmt (handle, &hstmt); /* Prepare the SQL statement for execution. */ rc = SQLPrepare (hstmt, (unsigned char *)shp_sql, SQL_NTS); /* Bind the varchar species value to the first parameter. */ pcbvalue1 = species_len; rc = SQLBindParameter (hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, species_len, 0, species, species_len, &pcbvalue1); /* Bind the varchar genus value to the second parameter. */ pcbvalue2 = genus_len; rc = SQLBindParameter (hstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, genus_len, 0, name, genus_len, &pcbvalue2); /* Bind the shape to the third parameter. */ pcbvalue3 = blob_len; rc = SQLBindParameter (hstmt, 3, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_BLOB, sitings_len, 0, sitings_shape, sitings_len, &pcbvalue3); /* Execute the insert statement. */ rc = SQLExecute (hstmt);