首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >使用 JDBC 批量插入 YashanDB GIS 空间数据的示例

使用 JDBC 批量插入 YashanDB GIS 空间数据的示例

原创
作者头像
数据库砖家
发布2025-05-16 19:38:10
发布2025-05-16 19:38:10
1150
举报

应用场景 在使用 Java 语言进行空间数据批量写入时,如何通过 JDBC 高效地向 YashanDB 插入 st_geometry 类型数据,是一个常见需求。

示例建表语句

代码语言:javascript
复制
drop table gis;
create table gis(id number not null, pos st_geometry not null);

插入代码片段 以下 Java 程序段展示了如何向 gis 表中批量写入点(POINT)类型的空间数据:

代码语言:javascript
复制
conn.setAutoCommit(false);
PreparedStatement ps = conn.prepareStatement("insert into gis values(?, ST_GEOMFROMTEXT(?))");
for(int i = 0; i < 10; i++) {
    ps.setInt(1, 1);
    ps.setString(2, "POINT(-137.690708 33.187434)");
    ps.addBatch();
}
ps.executeBatch();
conn.commit();

插入结果预览 执行后,可通过以下语句验证数据:

代码语言:javascript
复制
select id, st_astext(pos) from gis;

输出结果类似于:

代码语言:javascript
复制
ID | ST_ASTEXT(POS)
---|-------------------------
1  | POINT (-137.690708... 33.187434...)

共返回 10 条记录,说明数据插入成功。

总结建议 在批量写入 GIS 数据时,使用 JDBC 的 addBatch + executeBatch 方式能有效提升插入效率。空间数据转换函数 ST_GEOMFROMTEXT 是构建几何对象的关键。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档