ST_WKBToSQLÀº Àß ¾Ë·ÁÁø 2Áø Ç¥Çö½ÄÀ¸·Î ÁÖ¾îÁø ST_Geometry °ªÀ» ±¸ÃàÇÕ´Ï´Ù. SRID°ª 0Àº ÀÚµ¿À¸·Î »ç¿ëµË´Ï´Ù.
±¸¹®
db2gse.ST_WKBToSQL(WKBGeometry Blob(1M))
¸®ÅÏ À¯Çü
db2gse.ST_Geometry
¿¹
´ÙÀ½ÀÇ CREATE TABLE¹®Àº °¢ ±¸È¹À» °íÀ¯ÇÏ°Ô ½Äº°ÇÏ´Â LOT_ID Ä÷³ ¹× °¢ ±¸È¹ÀÇ ±âÇÏÇÐÀÌ µé¾î ÀÖ´Â LOT ´ÙÁß ´Ù°¢Çü Ä÷³À» Æ÷ÇÔÇÏ´Â LOTS Å×À̺íÀ» ÀÛ¼ºÇÕ´Ï´Ù.
CREATE TABLE lots (lot_id integer, lot db2gse.ST_MultiPolygon);
´ÙÀ½ÀÇ C ÄÚµå Á¶°¢¿¡´Â LOTS Å×ÀÌºí¿¡ µ¥ÀÌÅ͸¦ »ðÀÔÇÏ´Â Spatial Extender SQL ÇÔ¼ö¿Í ÇÔ²² »ðÀÔµÈ ODBC ÇÔ¼ö°¡ µé¾î ÀÖ½À´Ï´Ù.
ST_WKBToSQL ÇÔ¼ö´Â WKB Ç¥Çö½ÄÀ» Spatial Extender ±âÇÏÇÐÀ¸·Î º¯È¯ÇÕ´Ï´Ù. Àüü INSERT¹®ÀÌ wkb_sql char ¹®ÀÚ¿·Î º¹»çµË´Ï´Ù. INSERT¹®¿¡´Â LOT_ID µ¥ÀÌÅÍ¿Í LOT µ¥ÀÌÅ͸¦ µ¿ÀûÀ¸·Î Çã¿ëÇÏ´Â ¸Å°³º¯¼ö Ç¥½Ã¹®ÀÚ°¡ µé¾î ÀÖ½À´Ï´Ù.
/* ±¸È¹ ID ¹× ±¸È¹ ´Ù°¢ÇüÀ» »óÁÖ½Ã۱â À§ÇÑ SQL insert¹®À» SQL INSERT¹®À» ÀÛ¼ºÇÕ´Ï´Ù. ¹°À½Ç¥´Â ¸Å°³º¯¼ö Ç¥½Ã¹®ÀÚÀ̸ç, ·±Å¸ÀÓ¿¡¼ °Ë»öµÇ´Â lot °ª ¹× lot_id¸¦ ÁöÁ¤ÇÕ´Ï´Ù. */ strcpy (wkb_sql,"insert into lots (lot_id, lot) values(?, db2gse.ST_WKBToSQL(cast(? as blob(1m))))"); /* SQL¹® Çڵ鿡 ´ëÇÑ ¸Þ¸ð¸®¸¦ ÇÒ´çÇϰí, ¸í·É¹® ÇÚµéÀ» ¿¬°á ÇÚµé°ú °áÇÕÇÕ´Ï´Ù. */ rc = SQLAllocStmt (handle, &hstmt); /* ½ÇÇàÇÒ SQL¹®À» ÁغñÇÕ´Ï´Ù. */ rc = SQLPrepare (hstmt, (unsigned char *)wkb_sql, SQL_NTS); /* Á¤¼ö Ű °ªÀ» ù¹øÂ° ¸Å°³º¯¼ö¿¡ ¹ÙÀεåÇÕ´Ï´Ù. */ pcbvalue1 = 0; rc = SQLBindParameter (hstmt, 1, SQL_PARAM_INPUT, SQL_C_SLONG, SQL_INTEGER, 0, 0, &lot_id, 0, &pcbvalue1); /* ¸ð¾çÀ» µÎ ¹øÂ° ¸Å°³º¯¼ö·Î ¹ÙÀεåÇÕ´Ï´Ù. */ pcbvalue2 = blob_len; rc = SQLBindParameter (hstmt, 2, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_BLOB, blob_len, 0, shape_blob, blob_len, &pcbvalue2); /* »ðÀÔ¹®À» ½ÇÇàÇÕ´Ï´Ù. */ rc = SQLExecute (hstmt);