Guida di riferimento per l'utente

MLine FromShape

MLine FromShape rileva una forma di tipo multistringa lineare e un'identità del sistema di riferimento spaziale e restituisce una multistringa lineare.

Sintassi

db2gse.MLineFromShape(ShapeMultiLineString Blob(1M), cr db2gse.coordref)

Tipo di ritorno

db2gse.ST_MultiLineString

Esempi

Il seguente frammento di codifica compila la tabella WATERWAYS utilizzando un ID univoco, un nome e una multistringa lineare.

La tabella WATERWAYS viene creata con le colonne ID e NAME che identificano ogni flusso o l'intero sistema fluviale memorizzato nella tabella. La colonna WATER è una multistringa lineare poiché questi sistemi fluviali sono spesso degli aggregati di altre stringhe lineari.

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.MLineFromShape (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); 


[ Inizio pagina | Pagina precedente | Pagina successiva | Indice | Indice analitico ]