java.sql.DatabaseMetaData.getBestRowIdentifierメソッド

java.sql.DatabaseMetaData.getBestRowIdentifierメソッドは決められた優先順位で識別子を探します。必ずしも行を特定できる情報が見つかるわけではありません。

java.sql.DatabaseMetaData.getBestRowIdentifierメソッドは以下の順序で識別子となる情報を探します。
  • 表の主キー
  • 表の一意性制約あるいは一意性索引
  • 表にある全列
注: java.sql.DatabaseMetaData.getBestRowIdentifierメソッドは、主キー、一意性制約・一意性索引を見つけられない場合に、表にある全列から識別子を探し出します。このようにして識別子をメソッドが探し出す時、メソッドは行を特定する列の集合を必ず見つけ出します。しかしこうして得られた列の集合の値が重複した行が、表に存在する場合があり、その場合は一意に行を見つけることはできません。
関連資料
DatabaseMetaData 結果セット
java.sql.DatabaseMetaData.getProcedureColumnsメソッド
getProcedureColumnsの引数
getProcedureColumnsから返る結果セットにある列について