Package oracle.jdbc

## Interface OracleResultSetMetaData

All Superinterfaces:
  `ResultSetMetaData`, `Wrapper`

All Known Subinterfaces:
  `StructMetaData`

    public interface OracleResultSetMetaData
    extends ResultSetMetaData

An object that can be used to get information about the types and properties of the columns in a ResultSet object.

### Nested Class Summary

Nested Classes
`static class` `OracleResultSetMetaData.SecurityAttribute` eXtensible Data Security (XDS) attribute.

### Field Summary

### Fields inherited from interface java.sql.ResultSetMetaData

`columnNoNulls, columnNullable, columnNullableUnknown`

### Method Summary

All Methods Instance Methods Abstract Methods
`OracleResultSetMetaData.SecurityAttribute` `getSecurityAttribute​(int indexOfColumnInResultSet)` Returns the eXtensible Data Security (XDS) attribute of this column.
`boolean` `isColumnInvisible​(int indexOfColumnInResultSet)` Returns the column visibility information of the specified column.
`boolean` `isColumnJSON​(int column)` Returns true if the specified column contains JSON data otherwise returns false.
`boolean` `isNCHAR​(int index)` isNCHAR (int)
`boolean` `isVariableScale​(int column)` If the scale of Oracle NUMBER, FLOAT, DECIMAL and DOUBLE database datatype is unspecified this method returns `true`.

### Methods inherited from interface java.sql.ResultSetMetaData

`getCatalogName, getColumnClassName, getColumnCount, getColumnDisplaySize, getColumnLabel, getColumnName, getColumnType, getColumnTypeName, getPrecision, getScale, getSchemaName, getTableName, isAutoIncrement, isCaseSensitive, isCurrency, isDefinitelyWritable, isNullable, isReadOnly, isSearchable, isSigned, isWritable`

### Methods inherited from interface java.sql.Wrapper

`isWrapperFor, unwrap`

### Method Detail

#### isNCHAR

    boolean isNCHAR​(int index)
             throws SQLException

isNCHAR (int)

Parameters:
  `index` - the column index
Returns:
  true if the column is of type NCHAR/NVARCHAR/NCLOB false if the column is not of type NCHAR/NVARCHAR/NCLOB
Throws:
  `SQLException`

#### getSecurityAttribute

    OracleResultSetMetaData.SecurityAttribute getSecurityAttribute​(int indexOfColumnInResultSet)
                                                            throws SQLException

Returns the eXtensible Data Security (XDS) attribute of this column.

Throws:
  `SQLException`
See Also:
  `OracleResultSet.getAuthorizationIndicator`

#### isColumnInvisible

    boolean isColumnInvisible​(int indexOfColumnInResultSet)
                       throws SQLException

Returns the column visibility information of the specified column.

An invisible column is a user defined/specified hidden column which can be later changed to visible. It is created as:

         create table test_tab (col1 integer invisibile, col2 integer);

It can be modified later by using:

         alter table test_tab modify (col1 visible);

Parameters:
  `indexOfColumnInResultSet` - the column index
Returns:
  true if the column is invisible false if the column is not invisible
Throws:
  `SQLException`

#### isVariableScale

    boolean isVariableScale​(int column)
                     throws SQLException

If the scale of Oracle NUMBER, FLOAT, DECIMAL and DOUBLE database datatype is unspecified this method returns `true`. Oracle database returns -127 if scale is unspecified.

Parameters:
  `column` - the first column is 1, the second is 2, ...
Returns:
  true if the column type has variable scale
Throws:
  `SQLException`

#### isColumnJSON

    boolean isColumnJSON​(int column)
                  throws SQLException

Returns true if the specified column contains JSON data otherwise returns false.

A columns that always contains JSON data is a textual (VARCHAR2 or CLOB) or binary (BLOB) table column with an IS JSON check constraint or a view column that has an underlyign JSON generation function .

Parameters:
  `column` - the column index
Returns:
  true if the column contains JSON data false if the column does not contan JSON data
Throws:
  `SQLException`