检查 derby 数据库中的 table 是否存在自动递增

Check if Auto Increment exist in a table in derby database

我在 Derby Database 中创建了一个具有自动递增功能的 table。

   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 列是否自动递增。

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