Guide d'utilisation et de référence

ST_MLineFromWKB

ST_MLineFromWKB utilise en entrée une représentation WKB du type multiligne et un identificateur de système de références spatiales, et renvoie une multiligne.

Syntaxe

db2gse.ST_MLineFromWKB(WKBMultiLineString Blob(1M), SRID db2gse.coordref)

Type de retour

db2gse.ST_MultiLineString

Exemples

Le fragment de code ci-après peuple la table WATERWAYS avec un ID unique, un nom et une multiligne.

La table WATERWAYS est créée avec les colonnes ID et NAME, qui identifient chaque système hydrographique (rivières et ruisseaux) contenu dans la table. La colonne WATER est de type multiligne car ces systèmes sont souvent un agrégat de plusieurs lignes.

CREATE TABLE WATERWAYS (id        integer,
                             name      varchar(128),
                             water      db2gse.ST_MultiLineString);
 
/* Create the SQL insert statement to populate the id, name and
   multilinestring. The question marks are parameter markers that
   indicate the id, name and water values that will be retrieved at
   runtime. */
strcpy (shp_sql,"insert into WATERWAYS (id,name,water)
values (?,?, db2gse.ST_MLineFromWKB (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 integer id value to the first parameter. */
pcbvalue1 = 0;
rc = SQLBindParameter (hstmt, 1, SQL_PARAM_INPUT, SQL_C_SLONG,
   SQL_INTEGER, 0, 0, &id, 0, &pcbvalue1);
 
/* Bind the varchar name value to the second parameter. */
pcbvalue2 = name_len;
rc = SQLBindParameter (hstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR,
     SQL_CHAR, name_len, 0, &name, name_len, &pcbvalue2);
 
/* Bind the shape to the third parameter. */
pcbvalue3 = blob_len;
rc = SQLBindParameter (hstmt, 3, SQL_PARAM_INPUT, SQL_C_BINARY,
     SQL_BLOB, blob_len, 0, water_shape, blob_len, &pcbvalue3);
 
/* Execute the insert statement. */
rc = SQLExecute (hstmt);


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]