`
lc87624
  • 浏览: 143869 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

当jdbc遇到postgresql

阅读更多
postgresql里有很多好用的数据类型和扩展类型,例如ltree,例如period,但在通过jdbc访问pg时,使用这些特别的数据类型往往会遇到一些小麻烦。

以自身遇到的问题为例,在使用PreparedStatement构造sql时,period类型的字段可以通过下面的方法使用:
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
	conn = DBConnection.getConnection();
	StringBuilder sb = new StringBuilder();
	sb.append("INSERT INTO test_table (valid_periods) ");
	sb.append("VALUES ( period(?, ?) )");
	pstmt = conn.prepareStatement(sb.toString());
	pstmt.setTimestamp(1, timestamp1);
	pstmt.setTimestamp(2, timestamp2);
	
	pstmt.executeUpdate();
} catch (Exception e) {
	...
} finally {
	...
}


【WARNING】下面的方法之后测试失败,setObject仅在值为null时不报错,非null时仍然失败。
ltree类型可以通过setObject来设置值,使用setString报错。
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
	conn = DBConnection.getConnection();
	StringBuilder sb = new StringBuilder();
	sb.append("INSERT INTO test_table (cities_ltree) ");
	sb.append("VALUES ( ? )");
	pstmt = conn.prepareStatement(sb.toString());
	pstmt.setObejct(1, "北京.上海.东京");
	
	pstmt.executeUpdate();
} catch (Exception e) {
	...
} finally {
	...
}
分享到:
评论

相关推荐

    JDBC 连接到 PostgreSQL 数据库简单例子

    在本示例中,我们将详细讲解如何使用JDBC连接到PostgreSQL数据库,这是一个非常基础且实用的技能,对于任何需要在Java应用程序中处理数据库的开发者来说都是必不可少的。 首先,你需要确保已经在你的系统上安装了...

    PostgreSQL JDBC 4.2 Driver, 42.2.25

    在描述中提到的问题,"idea连接postgresql报错, 显示download file失败",这通常意味着在IntelliJ IDEA(简称idea)中尝试自动下载并安装JDBC驱动时遇到了网络问题或服务器不可达的情况。解决这个问题的一种方法是...

    java链接postgresql

    如果遇到问题,可以检查数据库配置是否正确,JDBC驱动是否已添加,以及SQL语句是否有效。 综上所述,"java链接postgresql"涉及到的关键技术包括JDBC接口的使用、PostgreSQL JDBC驱动的集成、数据库连接的建立与关闭...

    postgresql-10 manual

    PostgreSQL是一款流行的开源对象关系数据库系统(ORDBMS),它使用...此外,文档提供的版权信息和bug报告指南也为用户在使用过程中提供了必要的法律框架和反馈途径,保证了用户在遇到问题时能够得到有效的帮助和解答。

    activiti 5.9 postgresql 安装手册

    3. **添加JDBC驱动**:将PostgreSQL的JDBC驱动包(例如`postgresql-9.1-902.jdbc4.jar`)复制到`setup\files\dependencies\libs`目录下。注意选择正确的JDBC版本以匹配JDK版本。 4. **更新build.xml**: - 在`...

    Linux postgresql 安装配置

    这些RPM包涵盖了PostgreSQL的核心组件以及各种扩展插件,如Java连接器(`postgresql-jdbc`)、ODBC驱动(`postgresql-odbc`)等。 ##### 1.2 安装过程 接下来,执行`rpm -ivh --nodeps postgresql-*`命令来安装...

    postgresql下载

    对于开发者来说,PostgreSQL还提供丰富的API和驱动,如libpq(C语言库)、JDBC(Java连接器)、.NET的Npgsql等,方便各种编程语言与数据库的连接。同时,还有诸如pgAdmin这样的图形化管理工具,使得数据库管理更加...

    openGauss Connectors(openGauss-3.0.0-JDBC.tar.gz)

    3. **README_en.md** 和 **README_cn.md**:这两份文档分别提供了英文和中文的说明,详细介绍了如何在Java项目中配置和使用这些JDBC驱动,以及在遇到问题时的解决办法。它们是开发者开始使用openGauss Connectors的...

    jdbc连接各种数据库方式列表和下载列表

    本文将深入解析如何使用JDBC连接多种主流数据库,包括Oracle、DB2、SQL Server、Sybase、Informix、MySQL以及PostgreSQL。 ### Oracle 8/8i/9i 数据库(thin模式) 在连接Oracle数据库时,首先需要加载Oracle的...

    Access_JDBC30(破解版),jdk1.8可用

    Access_JDBC30是一款专为Java开发者设计的JDBC驱动程序,它允许应用程序与Microsoft Access数据库进行交互。这款驱动在 JDK 1.8 的环境...在大型项目中,通常会选用更强大的数据库系统,如MySQL、PostgreSQL或Oracle。

    ArcGIS连接Postgresql需要的32位客户端文件

    为了使ArcGIS能够与PostgreSQL进行通信,需要安装对应的ODBC或JDBC驱动,以及必要的库文件。 2. **32位客户端文件**:这里提到的是32位版本的客户端文件,这是因为有些版本的ArcGIS可能只能运行在32位环境中,或者...

    activemq-store-jdbc-1.3.jar.zip

    通过这个库,ActiveMQ能够将消息存储在关系数据库中,如MySQL、Oracle或PostgreSQL等,确保即使在服务器宕机的情况下,消息也不会丢失,从而保证了系统的高可用性。 在使用`activemq-store-jdbc-1.3.jar`之前,首先...

    nacos支持postgres

    5. **注意事项**:虽然Nacos官方支持了PostgreSQL,但在实际使用过程中可能会遇到兼容性问题或者性能差异,因为不同的数据库系统在SQL语法、性能优化等方面存在差异。因此,在生产环境中切换数据库时,建议进行充分...

    postgresql数据库安装包

    在Windows XP和Windows 7上,可能会遇到一些兼容性问题,比如旧版操作系统可能不支持较新的PostgreSQL版本。因此,确保下载与操作系统相匹配的稳定版本至关重要。此外,由于这两个系统已经不再受到官方支持,因此在...

    JDBC连接各种数据库经验技巧集萃

    - **URL格式**:`jdbc:postgresql://localhost/myDB`(其中“myDB”是数据库名) - **连接代码**: ```java String url = "jdbc:postgresql://localhost/myDB"; String user = "myuser"; String password = ...

    java_access_jdbc.zip

    6. 考虑升级数据库:如果频繁遇到这个限制,可能需要考虑升级到支持更高并发的数据库系统,如MySQL、PostgreSQL等。 总之,通过理解和熟练运用Java JDBC API,我们可以有效地连接和操作Access数据库。但需要注意的...

    Postgresql中子事务及性能分析1

    在使用JDBC连接PostgreSQL时,可以通过设置“autosave”参数为“always”,使驱动程序在每次执行语句后自动创建保存点,以达到类似其他数据库系统的错误处理方式。但这可能会对性能产生一定影响,因此在使用时需要...

    PostgreSQL 8.2.3 中文文档

    最后,文档会提供关于错误处理、日志分析和常见问题的解决方案,帮助用户解决遇到的问题。 通过阅读这份中文文档,用户不仅可以全面理解PostgreSQL 8.2.3的功能,还能学习到如何有效地使用和维护这一强大的数据库...

    postgresql+postGIS安装手册

    1. 开发环境:集成PostgreSQL和PostGIS到你的开发环境中,如使用Python的psycopg2库、Java的JDBC驱动或Node.js的pg模块。 2. 应用示例:你可以使用PostGIS构建各种地理信息系统应用,如地图服务、地理编码、路线...

Global site tag (gtag.js) - Google Analytics