【问题标题】:Check if Auto Increment exist in a table in derby database检查 derby 数据库中的表中是否存在自动增量
【发布时间】:2021-03-06 06:04:54
【问题描述】:

我在Derby Database 中创建了一个带有自动增量的表。

   For example: 
   CREATE TABLE USERS (ID BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1) , USER_NAME)

我现在必须检查 id 列的详细信息,

String query = "SELECT ID FROM USERS ";
conn = new Kanexon().db();
stmt = conn.prepareStatement(query);
rs = stmt.executeQuery();
rsmd = rs.getMetaData();

if(rs.next()){
    System.out.println("ColumnLabel: "+rsmd.getColumnLabel(1));
    System.out.println("ColumnName: "+rsmd.getColumnName(1));
    System.out.println("ColumnTypeName: "+rsmd.getColumnTypeName(1));
}

它给了我这样的输出:

ColumnLabel: ID
ColumnName: ID
ColumnTypeName: BIGINT

有没有一种方法可以检查ID 列是否自动递增。

【问题讨论】:

    标签: sql jdbc derby


    【解决方案1】:

    要确定列是否自动递增,请在 ResultSetMetadata 上使用 isAutoIncrement 方法:https://docs.oracle.com/javase/7/docs/api/java/sql/ResultSetMetaData.html#isAutoIncrement(int)

    【讨论】:

      猜你喜欢
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-24
      • 2016-06-13
      • 1970-01-01
      • 2017-07-07
      相关资源
      最近更新 更多