$sql.metaData.getBestRowIdentifier

Retrieves a description of a table's optimal set of columns that uniquely identifies a row.
Syntax
    $sql.metaData.getBestRowIdentifier{jdbcProfileName}{String catalog}{String schemaPattern}{String typeNamePattern}{String attributeNamePattern}
DocumentationRetrieves a description of a table's optimal set of columns that uniquely identifies a row. They are ordered by SCOPE.

Each column description has the following columns:

SCOPE short => actual scope of result

bestRowTemporary - very temporary, while using row
bestRowTransaction - valid for remainder of current transaction
bestRowSession - valid for remainder of current session
COLUMN_NAME String => column name
DATA_TYPE short => SQL data type from java.sql.Types
TYPE_NAME String => Data source dependent type name, for a UDT the type name is fully qualified
COLUMN_SIZE int => precision
BUFFER_LENGTH int => not used
DECIMAL_DIGITS short => scale
PSEUDO_COLUMN short => is this a pseudo column like an Oracle ROWID
bestRowUnknown - may or may not be pseudo column
bestRowNotPseudo - is NOT a pseudo column
bestRowPseudo - is a pseudo column:

    Paramter:
      catalog - a catalog name; must match the catalog name as it is stored in the database; "" retrieves those without a catalog; null means that the catalog name should not be used to narrow the search
      schema - a schema name; must match the schema name as it is stored in the database; "" retrieves those without a schema; null means that the schema name should not be used to narrow the search
      table - a table name; must match the table name as it is stored in the database
      scope - the scope of interest; use same values as SCOPE
      nullable - include columns that are nullable.
    Returns:
      ResultSet - each row is a column description
    Throws:
      SQLException - if a database access error occurs
Examples
GroupSQL
Minimum required transaction-mode:NONE
Required scripting permission of the developerPERMISSION_FL_BASIC
Minimum parameters6
Maximum parameters 6