次の方法で共有


getBestRowIdentifier メソッド (SQLServerDatabaseMetaData)

JDBC ドライバーのダウンロード

行を一意に識別する、テーブルの最適な列のセットの記述を取得します。

構文

  
public java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog,  
                                               java.lang.String schema,  
                                               java.lang.String table,  
                                               int scope,  
                                               boolean nullable)  

パラメーター

catalog

カタログ名を含む文字列です。

schema

スキーマ名を含む文字列です。

テーブル

テーブル名を含む文字列です。

スコープ (scope)

目的のスコープを示す int です。 次のいずれかの値を含みます。

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

nullable

null を許容する列を含める場合は true です。 それ以外の場合は、 falseです。

戻り値

SQLServerResultSet オブジェクトです。

例外

SQLServerException

解説

この getBestRowIdentifier メソッドは、java.sql.DatabaseMetaData インターフェイスの getBestRowIdentifier メソッドで指定されています。

getBestRowIdentifier メソッドによって返される結果セットには、次の情報が含まれます。

名前 種類 説明
SCOPE short 返される結果のスコープです。 次のいずれかの値を指定できます。

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)
COLUMN_NAME String 列の名前。
DATA_TYPE short java.sql.Types の SQL データ型です。
TYPE_NAME String データ型の名前です。
COLUMN_SIZE INT 列の完全桁数です。
BUFFER_LENGTH INT バッファーの長さです。
DECIMAL_DIGITS short 列の小数点以下の桁数です。
PSEUDO_COLUMN short 列が擬似列かどうかを示します。 次のいずれかの値を指定できます。

bestRowUnknown (0)

bestRowNotPseudo (1)

bestRowPseudo (2)

次に示す getBestRowIdentifier メソッドの使い方の例では、AdventureWorks2022 サンプル データベースの Person.Contact テーブルの最適な行識別子に関する情報を取得します。

public static void executeGetBestRowIdentifier(Connection con) {  
   try {  
      DatabaseMetaData dbmd = con.getMetaData();  
      ResultSet rs = dbmd.getBestRowIdentifier(null, "Person", "Contact", 0, true);  
      ResultSetMetaData rsmd = rs.getMetaData();  
  
      // Display the result set data.  
      int cols = rsmd.getColumnCount();  
      while(rs.next()) {  
         for (int i = 1; i <= cols; i++) {  
            System.out.println(rs.getString(i));  
         }  
      }  
      rs.close();  
   }  
  
   catch (Exception e) {  
      e.printStackTrace();  
   }  
}  

参照

SQLServerDatabaseMetaData のメソッド
SQLServerDatabaseMetaData のメンバー
SQLServerDatabaseMetaData クラス