gpt4 book ai didi

java - 使用 JDBC 检查 Sybase 中的列是否自动递增

转载 作者:行者123 更新时间:2023-11-29 04:04:49 25 4
gpt4 key购买 nike

要检查列是否自动递增,我可以执行以下操作

Connection con = ...    
DatabaseMetaData meta = con.getMetaData();
ResultSet metaCols = meta.getColumns(catalog, schema, table, "%");
while ( metaCols.next() )
String value = rs.getString("IS_AUTOINCREMENT")
...

工作正常,除了 Sybase 数据库。我已经尝试使用 jTDS 和 JConnect 驱动程序,但是对于这两个驱动程序我都遇到了这个异常:

java.sql.SQLException: Invalid column name IS_AUTOINCREMENT.

是否还有其他方法可以查明 Sybase 中的列是否自动递增?我认为“IS_AUTOINCREMENT”是 JDBC4 的一个特性,而 jTDS 是一个 JDBC4 兼容的驱动程序。

最佳答案

Sybase 使用“标识”列而不是“默认自动增量”,这就是我相信您收到此消息的原因。

尝试检查 TYPE_NAME 列是否包含关键字“identity”。

标识列的行为也有点不同,但这是一个旁白。

关于java - 使用 JDBC 检查 Sybase 中的列是否自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/553751/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com