All the methods based directly on the standard java.sql.ResultSetMetaData class view the temp-table using the standard SQL flat column model (columns without arrays)

These methods all view the columns as fields with arrays:

  • These methods let you see the data type of each ResultSet column as ABL and Java types:
    int getColumnProType(int columnNum) throws ProSQLException

    The following returns one of the constant values accessible from com.progress.open4gl.Parameter:

    String getColumnJavaTypeName(int columnNum) throws ProSQLException

    getColumnJavaTypeName() returns the name of the Java class to which each ABL data type maps. For information on these mappings, see Prepare and manage temp-table parameters.

    For more information, see the section on specifying data type meta data for temp-tables in Pass Parameters

  • The following methods provide access to the schema of temp-table parameters that contain array fields, viewed from an ABL viewpoint:
    int getFieldCount() throws ProSQLException
    String getFieldName(int fieldNum) throws ProSQLException
    int getFieldExtent(int fieldNum) throws ProSQLException
    int getFieldProType(int fieldNum) throws ProSQLException
    String getFieldJavaTypeName(int fieldNum) throws ProSQLException
    String getFieldTypeName(int fieldNum) throws ProSQLException

The ABL-oriented methods, which view the temp-table using the ABL array field model (fields that can include arrays), have prototypes that refer to Field or field. For more information on the relationship between ResultSet columns and ABL array fields, see Access temp-table array fields.

Although you can access the data using either the SQL (flat) or ABL (array) model, both provide equivalent functionality. The following table shows the correspondence between the ProResultSetMetaData methods.

Table 1. Comparing some array and flat model methods
This array model methodreturns the same set of values . . . As this flat model method . . .
getFieldName() getColumnName()
getFieldProType() getColumnProType()
getFieldJavaTypeName() getColumnJavaTypeName()
getFieldTypeName() getColumnTypeName()