| title | getBestRowIdentifier Method (SQLServerDatabaseMetaData) |
|---|---|
| description | getBestRowIdentifier Method (SQLServerDatabaseMetaData) |
| author | David-Engel |
| ms.author | davidengel |
| ms.date | 01/19/2017 |
| ms.service | sql |
| ms.subservice | connectivity |
| ms.topic | reference |
| apilocation | sqljdbc.jar |
| apiname | SQLServerDatabaseMetaData.getBestRowIdentifier |
| apitype | Assembly |
[!INCLUDEDriver_JDBC_Download]
Retrieves a description of the optimal set of columns of a table that uniquely identifies a row.
public java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog,
java.lang.String schema,
java.lang.String table,
int scope,
boolean nullable)
catalog
A String that contains the catalog name.
schema
A String that contains the schema name.
table
A String that contains the table name.
scope
An int that indicates the scope of interest. Values can include the following:
bestRowTemporary (0)
bestRowTransaction (1)
bestRowSession (2)
nullable
true to include nullable columns. Otherwise, false.
A SQLServerResultSet object.
This getBestRowIdentifier method is specified by the getBestRowIdentifier method in the java.sql.DatabaseMetaData interface.
The result set returned by the getBestRowIdentifier method will contain the following information:
| Name | Type | Description |
|---|---|---|
| SCOPE | short | The scope of the returned results. It can be one of the following values: bestRowTemporary (0) bestRowTransaction (1) bestRowSession (2) |
| COLUMN_NAME | String | The name of the column. |
| DATA_TYPE | short | The SQL data type from java.sql.Types. |
| TYPE_NAME | String | The name of the data type. |
| COLUMN_SIZE | int | The precision of the column. |
| BUFFER_LENGTH | int | The buffer length. |
| DECIMAL_DIGITS | short | The scale of the column. |
| PSEUDO_COLUMN | short | Indicates if the column is a pseudo column. It can be one of the following values: bestRowUnknown (0) bestRowNotPseudo (1) bestRowPseudo (2) |
The following example demonstrates how to use the getBestRowIdentifier method to return information about the best row identifier for the Person.Contact table in the [!INCLUDEssSampleDBnormal] sample database.
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 Methods
SQLServerDatabaseMetaData Members
SQLServerDatabaseMetaData Class