java - informix DB 上的 ROW_NUMBER() 显示不支持 BIGINT

标签 java jdbc informix

我正在尝试向 sql 查询添加行号以获取返回结果集,但它说 JDBC 不支持 BIGINT。我抬头看https://db.apache.org/derby/docs/10.9/ref/rreffuncrownumber.htmlhttps://www.ibm.com/support/knowledgecenter/SSGU8G_11.50.0/com.ibm.jdbc_pg.doc/ids_jdbc_141.htm .

代码:

String query = new StringBuilder("SELECT ROW_NUMBER() OVER() AS id, * FROM "+tableName).toString();

错误:

[Informix JDBC Driver][Informix]The data type bigint is not supported for current client/server configuration.

IBM 解决方案告诉您在插入后使用 getBigSerial() 获取 BIGINT。但是,我想找到一种方法,能够在查询表时添加一些自动递增数字,而无需创建实际列。有办法吗?

最佳答案

您可以在查询中将其转换为 VARCHAR。

如果您将该字符串用于 Java 代码中的 BigInteger 以外的用途,则可以将其转换为 BigInteger。

关于java - informix DB 上的 ROW_NUMBER() 显示不支持 BIGINT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39519961/

相关文章:

java - 我的代码是 View 、模型或 Controller 的一部分吗?

java - 打印到文件

java - 在 JDBC 批处理作业中使用多线程

mysql - Hibernate-mysql-c3p0 的连接丢失问题

windows - 无法通过 Windows 服务启动 Informix

c# - Informix 和 .NET 的时间和日期时间格式

java - 如何在不使用和额外的特殊字符的情况下初始化 6*5 二维矩阵中的 26 个字符

java - Android XML 中的多个错误

jdbc - wildfly - 安装 postgres 驱动程序 jar

mysql - 没有提示指令的直接连接中表的顺序是否会影响性能?