Package net.snowflake.client.core

## Interface SFSqlInput

All Superinterfaces:
  `SQLInput`

All Known Implementing Classes:
  `ArrowSqlInput`, `BaseSqlInput`, `JsonSqlInput`

    @SnowflakeJdbcInternalApi
    public interface SFSqlInput
    extends SQLInput

This interface extends the standard `SQLInput` interface to provide additional methods.

### Method Summary

All Methods Static Methods Instance Methods Abstract Methods
`<T> T[]` `readArray​(Class<T> type)` Reads the next attribute in the stream and returns it as a `Array` object.
`<T> List<T>` `readList​(Class<T> type)` Reads the next attribute in the stream and returns it as a `List` object.
`<T> Map<String,​T>` `readMap​(Class<T> type)` Reads the next attribute in the stream and returns it as a `Map` object.
`<T> T` `readObject​(Class<T> type, TimeZone tz)` Reads the next attribute in the stream and returns it as a `Object` object.
`Timestamp` `readTimestamp​(TimeZone tz)` Reads the next attribute in the stream and returns it as a `java.sql.Timestamp` object.
`static SFSqlInput` `unwrap​(SQLInput sqlInput)` Method unwrapping object of class SQLInput to object of class SfSqlInput.

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

`readArray, readAsciiStream, readBigDecimal, readBinaryStream, readBlob, readBoolean, readByte, readBytes, readCharacterStream, readClob, readDate, readDouble, readFloat, readInt, readLong, readNClob, readNString, readObject, readObject, readRef, readRowId, readShort, readSQLXML, readString, readTime, readTimestamp, readURL, wasNull`

### Method Detail

#### unwrap

    static SFSqlInput unwrap​(SQLInput sqlInput)

Method unwrapping object of class SQLInput to object of class SfSqlInput.

Parameters:
  `sqlInput` - SQLInput to consider.
Returns:
  Object unwrapped to SFSqlInput class.

#### readTimestamp

    Timestamp readTimestamp​(TimeZone tz)
                     throws SQLException

Reads the next attribute in the stream and returns it as a `java.sql.Timestamp` object.

Parameters:
  `tz` - timezone to consider.
Returns:
  the attribute; if the value is SQL `NULL`, returns `null`
Throws:
  `SQLException` - if a database access error occurs

#### readObject

    <T> T readObject​(Class<T> type,
                     TimeZone tz)
              throws SQLException

Reads the next attribute in the stream and returns it as a `Object` object.

Type Parameters:
  `T` - the type of the class modeled by this Class object
Parameters:
  `type` - Class representing the Java data type to convert the attribute to.
Returns:
  the attribute at the head of the stream as an `Object` in the Java programming language;`null` if the attribute is SQL `NULL`
Throws:
  `SQLException` - if a database access error occurs

#### readList

    <T> List<T> readList​(Class<T> type)
                  throws SQLException

Reads the next attribute in the stream and returns it as a `List` object.

Type Parameters:
  `T` - the type of the class modeled by this Class object
Parameters:
  `type` - Class representing the Java data type to convert the attribute to.
Returns:
  the attribute at the head of the stream as an `List` in the Java programming language;`null` if the attribute is SQL `NULL`
Throws:
  `SQLException` - if a database access error occurs

#### readMap

    <T> Map<String,​T> readMap​(Class<T> type)
                             throws SQLException

Reads the next attribute in the stream and returns it as a `Map` object.

Type Parameters:
  `T` - the type of the class modeled by this Class object
Parameters:
  `type` - Class representing the Java data type to convert the attribute to.
Returns:
  the attribute at the head of the stream as an `Map` in the Java programming language;`null` if the attribute is SQL `NULL`
Throws:
  `SQLException` - if a database access error occurs

#### readArray

    <T> T[] readArray​(Class<T> type)
               throws SQLException

Reads the next attribute in the stream and returns it as a `Array` object.

Type Parameters:
  `T` - the type of the class modeled by this Class object
Parameters:
  `type` - Class representing the Java data type to convert the attribute to.
Returns:
  the attribute at the head of the stream as an `Array` in the Java programming language;`null` if the attribute is SQL `NULL`
Throws:
  `SQLException` - if a database access error occurs