Teilen über


getBestRowIdentifier-Methode (SQLServerDatabaseMetaData)

JDBC-Treiber herunterladen

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

SQLServerException

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 type 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