getBestRowIdentifier-Methode (SQLServerDatabaseMetaData)
Ruft eine Beschreibung der optimalen Gruppe von Spalten einer Tabelle ab, durch die eine Zeile eindeutig identifiziert wird.
Syntax
public java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog,
java.lang.String schema,
java.lang.String table,
int scope,
boolean nullable)
Parameter
catalog
Ein String-Objekt, das den Katalognamen enthält.
schema
Ein String-Objekt, das den Schemanamen enthält.
Tabelle
Ein String-Objekt, das den Tabellennamen enthält.
scope
Ein Wert vom Typ int zum Angeben des relevanten Bereichs. Die Werte können Folgendes enthalten:
bestRowTemporary (0)
bestRowTransaction (1)
bestRowSession (2)
nullable
TRUE, um Spalten einzufügen, die NULL-Werte zulassen. Andernfalls lautet der Wert false.
Rückgabewert
Ein SQLServerResultSet-Objekt.
Ausnahmen
Bemerkungen
Diese getBestRowIdentifier-Methode wird von der getBestRowIdentifier-Methode in der java.sql.DatabaseMetaData-Schnittstelle angegeben.
Das von der getBestRowIdentifier-Methode zurückgegebene Resultset enthält die folgenden Informationen:
Name | Typ | BESCHREIBUNG |
---|---|---|
SCOPE | short | Der Bereich der zurückgegebenen Ergebnisse. Es kann sich um einen der folgenden Werte handeln: bestRowTemporary (0) bestRowTransaction (1) bestRowSession (2) |
COLUMN_NAME | String | Der Name der Spalte. |
DATA_TYPE | short | Der SQL-Datentyp aus "java.sql.Types". |
TYPE_NAME | String | Der Name des Datentyps. |
COLUMN_SIZE | INT | Die Genauigkeit der Spalte. |
BUFFER_LENGTH | INT | Die Pufferlänge. |
DECIMAL_DIGITS | short | Die Dezimalstellen der Spalte. |
PSEUDO_COLUMN | short | Gibt an, ob die Spalte eine Pseudospalte ist. Es kann sich um einen der folgenden Werte handeln: bestRowUnknown (0) bestRowNotPseudo (1) bestRowPseudo (2) |
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie mithilfe der getBestRowIdentifier-Methode Informationen zum geeignetsten Zeilenidentifizierer für die Tabelle „Person.Contact“ aus der AdventureWorks2022-Beispieldatenbank zurückgegeben werden können.
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();
}
}
Weitere Informationen
SQLServerDatabaseMetaData-Methoden
SQLServerDatabaseMetaData-Elemente
SQLServerDatabaseMetaData-Klasse