首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >通过 JDBC 向 YashanDB 批量插入空间数据的标准写法

通过 JDBC 向 YashanDB 批量插入空间数据的标准写法

原创
作者头像
数据库砖家
发布2025-05-16 20:06:45
发布2025-05-16 20:06:45
6700
代码可运行
举报
运行总次数:0
代码可运行

应用背景 在空间信息系统开发中,GIS 数据的批量写入效率尤为关键。以下展示如何通过 JDBC 向 YashanDB 中插入 st_geometry 类型的点数据。

表结构示例

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

JDBC 批量插入代码 使用 PreparedStatement 搭配 addBatch 方法,实现高效批量插入:

代码语言:javascript
代码运行次数:0
运行
复制
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();

验证插入结果 执行以下 SQL 查看插入效果:

代码语言:javascript
代码运行次数:0
运行
复制
select id, st_astext(pos) from gis;

输出显示所有插入的点坐标为:

代码语言:javascript
代码运行次数:0
运行
复制
POINT (-137.690708000000001 33.187434000000003)

共计 10 条记录,表明写入成功。

实用建议 利用 ST_GEOMFROMTEXT 函数可方便地将文本格式的坐标转换为几何对象,并配合 JDBC 批处理提升整体写入性能。

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

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

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

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

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