ST_GeomFromText() 来创建几何值。你可以使用type-specific(类型定义)函数//这里留有疑义,下面的例子和前面的相同都是使用ST_GeomFromText() 但是我感觉更像是要使用类似POINT() 函数:
SET @g = 'POINT(1 1)';
INSERT INTO geom VALUES (ST_PointFromText(@g));
SET @g = ‘LINESTRING(0 0,1 1,2 2)’;
INSERT INTO geom VALUES (ST_LineStringFromText(@g));
SET @g = ‘POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7, 5 5))’;
INSERT INTO geom VALUES (ST_PolygonFromText(@g));
SET @g =
‘GEOMETRYCOLLECTION(POINT(1 1),LINESTRING(0 0,1 1,2 2,3 3,4 4))’;
INSERT INTO geom VALUES (ST_GeomCollFromText(@g));
一个应用程序想要在查询服务器的时候使用WKB 表示几何数值.下面有几个方法实现这个需求。例如
插入一个POINT(1 1)使用二进制语法:
mysql> INSERT INTO geom VALUES
-> (ST_GeomFromWKB(0x0101000000000000000000F03F000000000000F03F));
一个ODBC应用可以发送一个WKB表达式,并把他绑定到一个占位符上,使用BLOB 类型:
INSERT INTO geom VALUES (ST_GeomFromWKB(?))
其他程序接口可能支持类似的占位符机制
C 语言中,你可以使用 mysql_real_escape_string() 跳过一个二进制数值,包含结果到一个查询字符串中
12.5.3.4 读取Fetching Spatial Data
Geometry数值存储在表格中可以读取到内部格式,你可以转换成WKT或者WKB格式
读取空间数据到内部格式:
读出来的内部格式在表和表之间传递很有用
CREATE TABLE geom2 (g GEOMETRY) SELECT