我正在尝试使用 MYSQL 插入几何数据,这是一个代码示例:
CREATE TABLE CARTESIAN
(
ROW_ID INT NOT NULL,
G GEOMETRY,
PRIMARY KEY(ROW_ID)
)
INSERT INTO CARTESIAN
VALUES (0,'POINT(1 1)'),
(1,'LINESTRING(2 1, 6 6)'),
(2,'POLYGON((0 5, 2 5, 2 7, 0 7, 0 5))')
Run Code Online (Sandbox Code Playgroud)
当我运行 INSERT 时,我收到消息“无法从发送到 GEOMETRY 字段的数据中获取几何对象”。你能解释一下我错在哪里吗?
您需要GEOMETRY先将文本表示转换为 ,然后才能使用该ST_GeomFromText函数插入它们。尝试这个:
CREATE TABLE CARTESIAN
(
ROW_ID INT NOT NULL,
G GEOMETRY,
PRIMARY KEY(ROW_ID)
);
INSERT INTO CARTESIAN
VALUES (0,ST_GeomFromText('POINT(1 1)')),
(1,ST_GeomFromText('LINESTRING(2 1, 6 6)')),
(2,ST_GeomFromText('POLYGON((0 5, 2 5, 2 7, 0 7, 0 5))'));
SELECT * FROM CARTESIAN
Run Code Online (Sandbox Code Playgroud)
输出:
ROW_ID G
0 [GEOMETRY - 25 B]
1 [GEOMETRY - 45 B]
2 [GEOMETRY - 97 B]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5825 次 |
| 最近记录: |