Interface ISQLServerCallableStatement

    • Field Summary

      • Fields inherited from interface java.sql.Statement

        CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
    • Method Summary

      All Methods Instance Methods Abstract Methods Deprecated Methods 
      Modifier and Type Method Description
      java.io.InputStream getAsciiStream​(int parameterIndex)
      Returns the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters.
      java.io.InputStream getAsciiStream​(java.lang.String parameterName)
      Returns the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters.
      java.math.BigDecimal getBigDecimal​(java.lang.String parameterName, int scale)
      Deprecated.
      java.io.InputStream getBinaryStream​(int parameterIndex)
      Returns the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes.
      java.io.InputStream getBinaryStream​(java.lang.String parameterName)
      Returns the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes.
      java.sql.Timestamp getDateTime​(int index)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getDateTime​(int index, java.util.Calendar cal)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getDateTime​(java.lang.String parameterName)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getDateTime​(java.lang.String name, java.util.Calendar cal)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      DateTimeOffset getDateTimeOffset​(int parameterIndex)
      Returns the DateTimeOffset value of parameter with index parameterIndex.
      DateTimeOffset getDateTimeOffset​(java.lang.String parameterName)
      Returns the DateTimeOffset value of parameter with name parameterName.
      java.math.BigDecimal getMoney​(int parameterIndex)
      Returns the value of the column specified as a java.math.BigDecimal object.
      java.math.BigDecimal getMoney​(java.lang.String parameterName)
      Returns the value of the column specified as a java.math.BigDecimal object.
      java.sql.Timestamp getSmallDateTime​(int index)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getSmallDateTime​(int index, java.util.Calendar cal)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getSmallDateTime​(java.lang.String parameterName)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.sql.Timestamp getSmallDateTime​(java.lang.String name, java.util.Calendar cal)
      Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
      java.math.BigDecimal getSmallMoney​(int parameterIndex)
      Returns the value of the column specified as a java.math.BigDecimal object.
      java.math.BigDecimal getSmallMoney​(java.lang.String parameterName)
      Returns the value of the column specified as a java.math.BigDecimal object.
      void registerOutParameter​(int parameterIndex, int sqlType, int precision, int scale)
      Registers the parameter in ordinal position index to be of JDBC type sqlType.
      void registerOutParameter​(int parameterIndex, java.sql.SQLType sqlType, int precision, int scale)
      Registers the parameter in ordinal position index to be of JDBC type sqlType.
      void registerOutParameter​(java.lang.String parameterName, int sqlType, int precision, int scale)
      Registers the parameter in ordinal position index to be of JDBC type sqlType.
      void registerOutParameter​(java.lang.String parameterName, java.sql.SQLType sqlType, int precision, int scale)
      Registers the parameter in ordinal position index to be of JDBC type sqlType.
      void setBigDecimal​(java.lang.String parameterName, java.math.BigDecimal value, int precision, int scale)
      Sets the designated parameter to the given java.math.BigDecimal value.
      void setBigDecimal​(java.lang.String parameterName, java.math.BigDecimal value, int precision, int scale, boolean forceEncrypt)
      Sets the designated parameter to the given java.math.BigDecimal value.
      void setBoolean​(java.lang.String parameterName, boolean value, boolean forceEncrypt)
      Sets the designated parameter to the given Java boolean value.
      void setByte​(java.lang.String parameterName, byte value, boolean forceEncrypt)
      Sets the designated parameter to the given Java byte value.
      void setBytes​(java.lang.String parameterName, byte[] value, boolean forceEncrypt)
      Sets the designated parameter to the given Java array of bytes.
      void setDate​(java.lang.String parameterName, java.sql.Date value, java.util.Calendar calendar, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Date value, using the given Calendar object.
      void setDateTime​(java.lang.String parameterName, java.sql.Timestamp value)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setDateTime​(java.lang.String parameterName, java.sql.Timestamp value, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setDateTimeOffset​(java.lang.String parameterName, DateTimeOffset value)
      Sets parameter parameterName to DateTimeOffset value.
      void setDateTimeOffset​(java.lang.String parameterName, DateTimeOffset value, int scale)
      Sets parameter parameterName to DateTimeOffset value.
      void setDateTimeOffset​(java.lang.String parameterName, DateTimeOffset value, int scale, boolean forceEncrypt)
      Sets parameter parameterName to DateTimeOffset value.
      void setDouble​(java.lang.String parameterName, double value, boolean forceEncrypt)
      Sets the designated parameter to the given Java double value.
      void setFloat​(java.lang.String parameterName, float value, boolean forceEncrypt)
      Sets the designated parameter to the given Java float value.
      void setInt​(java.lang.String parameterName, int value, boolean forceEncrypt)
      Sets the designated parameter to the given Java int value.
      void setLong​(java.lang.String parameterName, long value, boolean forceEncrypt)
      Sets the designated parameter to the given Java long value.
      void setMoney​(java.lang.String parameterName, java.math.BigDecimal value)
      Sets the designated parameter to the given Java java.math.BigDecimal value.
      void setMoney​(java.lang.String parameterName, java.math.BigDecimal value, boolean forceEncrypt)
      Sets the designated parameter to the given Java java.math.BigDecimal value.
      void setNString​(java.lang.String parameterName, java.lang.String value, boolean forceEncrypt)
      Sets the designated parameter to the given String object.
      void setObject​(java.lang.String parameterName, java.lang.Object value, int sqlType, int decimals, boolean forceEncrypt)
      Sets the value of the designated parameter with the given object.
      void setObject​(java.lang.String parameterName, java.lang.Object value, int targetSqlType, java.lang.Integer precision, int scale)
      Sets the value of the designated parameter with the given object.
      void setObject​(java.lang.String parameterName, java.lang.Object value, java.sql.SQLType jdbcType, int scale, boolean forceEncrypt)
      Sets the value of the designated parameter with the given object.
      void setShort​(java.lang.String parameterName, short value, boolean forceEncrypt)
      Sets the designated parameter to the given Java short value.
      void setSmallDateTime​(java.lang.String parameterName, java.sql.Timestamp value)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setSmallDateTime​(java.lang.String parameterName, java.sql.Timestamp value, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setSmallMoney​(java.lang.String parameterName, java.math.BigDecimal value)
      Sets the designated parameter to the given Java java.math.BigDecimal value.
      void setSmallMoney​(java.lang.String parameterName, java.math.BigDecimal value, boolean forceEncrypt)
      Sets the designated parameter to the given Java java.math.BigDecimal value.
      void setString​(java.lang.String parameterName, java.lang.String value, boolean forceEncrypt)
      Sets the designated parameter to the given Java String value.
      void setStructured​(java.lang.String parameterName, java.lang.String tvpName, ISQLServerDataRecord tvpDataRecord)
      Populates a table valued parameter passed to a stored procedure with an ISQLServerDataRecord object.
      void setStructured​(java.lang.String parameterName, java.lang.String tvpName, SQLServerDataTable tvpDataTable)
      Populates a table valued parameter passed to a stored procedure with a data table.
      void setStructured​(java.lang.String parameterName, java.lang.String tvpName, java.sql.ResultSet tvpResultSet)
      Populates a table valued parameter passed to a stored procedure with a ResultSet retrieved from another table
      void setTime​(java.lang.String parameterName, java.sql.Time value, int scale)
      Sets the designated parameter to the given java.sql.Time value.
      void setTime​(java.lang.String parameterName, java.sql.Time value, int scale, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Time value.
      void setTime​(java.lang.String parameterName, java.sql.Time value, java.util.Calendar calendar, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Time value, using the given Calendar object.
      void setTimestamp​(java.lang.String parameterName, java.sql.Timestamp value, int scale)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setTimestamp​(java.lang.String parameterName, java.sql.Timestamp value, int scale, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setTimestamp​(java.lang.String parameterName, java.sql.Timestamp value, java.util.Calendar calendar, boolean forceEncrypt)
      Sets the designated parameter to the given java.sql.Timestamp value.
      void setUniqueIdentifier​(java.lang.String parameterName, java.lang.String guid)
      Sets the designated parameter to the given String value.
      void setUniqueIdentifier​(java.lang.String parameterName, java.lang.String guid, boolean forceEncrypt)
      Sets the designated parameter to the given String value.
      • Methods inherited from interface java.sql.CallableStatement

        getArray, getArray, getBigDecimal, getBigDecimal, getBigDecimal, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getDate, getDate, getDate, getDate, getDouble, getDouble, getFloat, getFloat, getInt, getInt, getLong, getLong, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getURL, getURL, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setURL, wasNull
      • Methods inherited from interface java.sql.PreparedStatement

        addBatch, clearParameters, execute, executeLargeUpdate, executeQuery, executeUpdate, getMetaData, getParameterMetaData, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL
      • Methods inherited from interface java.sql.Statement

        addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout
      • Methods inherited from interface java.sql.Wrapper

        isWrapperFor, unwrap
    • Method Detail

      • getDateTime

        java.sql.Timestamp getDateTime​(int index)
                                throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        index - the first column is 1, the second is 2, ...
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getDateTime

        java.sql.Timestamp getDateTime​(java.lang.String parameterName)
                                throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        parameterName - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getDateTime

        java.sql.Timestamp getDateTime​(int index,
                                       java.util.Calendar cal)
                                throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the timestamp if the underlying database does not store timezone information.
        Parameters:
        index - the first column is 1, the second is 2, ...
        cal - the java.util.Calendar object to use in constructing the dateTime
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getDateTime

        java.sql.Timestamp getDateTime​(java.lang.String name,
                                       java.util.Calendar cal)
                                throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the timestamp if the underlying database does not store timezone information.
        Parameters:
        name - the name of the column
        cal - the java.util.Calendar object to use in constructing the dateTime
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getSmallDateTime

        java.sql.Timestamp getSmallDateTime​(int index)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        index - the first column is 1, the second is 2, ...
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getSmallDateTime

        java.sql.Timestamp getSmallDateTime​(java.lang.String parameterName)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        parameterName - The name of a column.
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getSmallDateTime

        java.sql.Timestamp getSmallDateTime​(int index,
                                            java.util.Calendar cal)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        index - the first column is 1, the second is 2, ...
        cal - the java.util.Calendar object to use in constructing the smalldateTime
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getSmallDateTime

        java.sql.Timestamp getSmallDateTime​(java.lang.String name,
                                            java.util.Calendar cal)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
        Parameters:
        name - The name of a column
        cal - the java.util.Calendar object to use in constructing the smalldateTime
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getDateTimeOffset

        DateTimeOffset getDateTimeOffset​(int parameterIndex)
                                  throws SQLServerException
        Returns the DateTimeOffset value of parameter with index parameterIndex.
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, and so on
        Returns:
        DateTimeOffset value if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - if parameterIndex is out of range; if a database access error occurs or this method is called on a closed CallableStatement
      • getDateTimeOffset

        DateTimeOffset getDateTimeOffset​(java.lang.String parameterName)
                                  throws SQLServerException
        Returns the DateTimeOffset value of parameter with name parameterName.
        Parameters:
        parameterName - the name of the parameter
        Returns:
        DateTimeOffset value if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • getAsciiStream

        java.io.InputStream getAsciiStream​(int parameterIndex)
                                    throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARCHAR values. The JDBC driver will do any necessary conversion from the database format into ASCII.

        Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getter method implicitly closes the stream. Also, a stream may return 0 when the method InputStream.available is called whether there is data available or not.

        Parameters:
        parameterIndex - the first column is 1, the second is 2, ...
        Returns:
        a Java input stream that delivers the database column value as a stream of one-byte ASCII characters; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - if the columnIndex is not valid; if a database access error occurs or this method is called on a closed result set
      • getAsciiStream

        java.io.InputStream getAsciiStream​(java.lang.String parameterName)
                                    throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARCHAR values. The JDBC driver will do any necessary conversion from the database format into ASCII.

        Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getter method implicitly closes the stream. Also, a stream may return 0 when the method available is called whether there is data available or not.

        Parameters:
        parameterName - the name of the parameter
        Returns:
        a Java input stream that delivers the database column value as a stream of one-byte ASCII characters. If the value is SQL NULL, the value returned is null.
        Throws:
        SQLServerException - if the columnLabel is not valid; if a database access error occurs or this method is called on a closed result set
      • getMoney

        java.math.BigDecimal getMoney​(int parameterIndex)
                               throws SQLServerException
        Returns the value of the column specified as a java.math.BigDecimal object.
        Parameters:
        parameterIndex - The zero-based ordinal of a column.
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getMoney

        java.math.BigDecimal getMoney​(java.lang.String parameterName)
                               throws SQLServerException
        Returns the value of the column specified as a java.math.BigDecimal object.
        Parameters:
        parameterName - The name of a column.
        Returns:
        the column value; if the value is SQL NULL, the value returned is null.
        Throws:
        SQLServerException - when an error occurs
      • getSmallMoney

        java.math.BigDecimal getSmallMoney​(int parameterIndex)
                                    throws SQLServerException
        Returns the value of the column specified as a java.math.BigDecimal object.
        Parameters:
        parameterIndex - The zero-based ordinal of a column.
        Returns:
        the column value; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - when an error occurs
      • getSmallMoney

        java.math.BigDecimal getSmallMoney​(java.lang.String parameterName)
                                    throws SQLServerException
        Returns the value of the column specified as a java.math.BigDecimal object.
        Parameters:
        parameterName - The name of a column.
        Returns:
        the column value; if the value is SQL NULL, the value returned is null.
        Throws:
        SQLServerException - when an error occurs
      • getBinaryStream

        java.io.InputStream getBinaryStream​(int parameterIndex)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARBINARY values.

        Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getter method implicitly closes the stream. Also, a stream may return 0 when the method InputStream.available is called whether there is data available or not.

        Parameters:
        parameterIndex - the first column is 1, the second is 2, ...
        Returns:
        a Java input stream that delivers the database column value as a stream of uninterpreted bytes; if the value is SQL NULL, the value returned is null
        Throws:
        SQLServerException - if the columnIndex is not valid; if a database access error occurs or this method is called on a closed result set
      • getBinaryStream

        java.io.InputStream getBinaryStream​(java.lang.String parameterName)
                                     throws SQLServerException
        Returns the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARBINARY values.

        Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getter method implicitly closes the stream. Also, a stream may return 0 when the method available is called whether there is data available or not.

        Parameters:
        parameterName - the name of the parameter
        Returns:
        a Java input stream that delivers the database column value as a stream of uninterpreted bytes; if the value is SQL NULL, the result is null
        Throws:
        SQLServerException - if the columnLabel is not valid; if a database access error occurs or this method is called on a closed result set
      • setTimestamp

        void setTimestamp​(java.lang.String parameterName,
                          java.sql.Timestamp value,
                          java.util.Calendar calendar,
                          boolean forceEncrypt)
                   throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL TIMESTAMP value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        calendar - a java.util.Calendar
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTimestamp(int)
      • setTime

        void setTime​(java.lang.String parameterName,
                     java.sql.Time value,
                     java.util.Calendar calendar,
                     boolean forceEncrypt)
              throws SQLServerException
        Sets the designated parameter to the given java.sql.Time value, using the given Calendar object. The driver uses the Calendar object to construct an SQL TIME value, which the driver then sends to the database. With a a Calendar object, the driver can calculate the time taking into account a custom timezone. If no Calendar object is specified, the driver uses the default timezone, which is that of the virtual machine running the application.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        calendar - the Calendar object the driver will use to construct the time
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTime(int)
      • setDate

        void setDate​(java.lang.String parameterName,
                     java.sql.Date value,
                     java.util.Calendar calendar,
                     boolean forceEncrypt)
              throws SQLServerException
        Sets the designated parameter to the given java.sql.Date value, using the given Calendar object. The driver uses the Calendar object to construct an SQL DATE value, which the driver then sends to the database. With a a Calendar object, the driver can calculate the date taking into account a custom timezone. If no Calendar object is specified, the driver uses the default timezone, which is that of the virtual machine running the application.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        calendar - the Calendar object the driver will use to construct the date
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getDate(int)
      • setNString

        void setNString​(java.lang.String parameterName,
                        java.lang.String value,
                        boolean forceEncrypt)
                 throws SQLServerException
        Sets the designated parameter to the given String object. The driver converts this to a SQL NCHAR or NVARCHAR or LONGNVARCHAR
        Parameters:
        parameterName - the name of the parameter to be set
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
      • setObject

        void setObject​(java.lang.String parameterName,
                       java.lang.Object value,
                       int sqlType,
                       int decimals,
                       boolean forceEncrypt)
                throws SQLServerException
        Sets the value of the designated parameter with the given object.

        The given Java object will be converted to the given targetSqlType before being sent to the database. If the object has a custom mapping (is of a class implementing the interface SQLData), the JDBC driver should call the method SQLData.writeSQL to write it to the SQL data stream. If, on the other hand, the object is of a class implementing Ref, Blob, Clob, NClob, Struct, java.net.URL, or Array, the driver should pass it to the database as a value of the corresponding SQL type.

        Note that this method may be used to pass database- specific abstract data types.

        Parameters:
        parameterName - the name of the parameter
        value - the object containing the input parameter value
        sqlType - the SQL type (as defined in java.sql.Types) to be sent to the database. The scale argument may further qualify this type.
        decimals - for java.sql.Types.DECIMAL or java.sql.Types.NUMERIC types, this is the number of digits after the decimal point. For all other types, this value will be ignored.
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        Types, CallableStatement.getObject(int)
      • setObject

        void setObject​(java.lang.String parameterName,
                       java.lang.Object value,
                       int targetSqlType,
                       java.lang.Integer precision,
                       int scale)
                throws SQLServerException
        Sets the value of the designated parameter with the given object.

        The given Java object will be converted to the given targetSqlType before being sent to the database. If the object has a custom mapping (is of a class implementing the interface SQLData), the JDBC driver should call the method SQLData.writeSQL to write it to the SQL data stream. If, on the other hand, the object is of a class implementing Ref, Blob, Clob, NClob, Struct, java.net.URL, or Array, the driver should pass it to the database as a value of the corresponding SQL type.

        Note that this method may be used to pass datatabase- specific abstract data types.

        Parameters:
        parameterName - the name of the parameter
        value - the object containing the input parameter value
        targetSqlType - the SQL type (as defined in java.sql.Types) to be sent to the database. The scale argument may further qualify this type.
        precision - the precision of the column.
        scale - the scale of the column.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        Types, CallableStatement.getObject(int)
      • setTimestamp

        void setTimestamp​(java.lang.String parameterName,
                          java.sql.Timestamp value,
                          int scale)
                   throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL TIMESTAMP value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        scale - the scale of the parameter
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTimestamp(int)
      • setTimestamp

        void setTimestamp​(java.lang.String parameterName,
                          java.sql.Timestamp value,
                          int scale,
                          boolean forceEncrypt)
                   throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL TIMESTAMP value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        scale - the scale of the parameter
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTimestamp(int)
      • setDateTimeOffset

        void setDateTimeOffset​(java.lang.String parameterName,
                               DateTimeOffset value)
                        throws SQLServerException
        Sets parameter parameterName to DateTimeOffset value.
        Parameters:
        parameterName - the name of the parameter
        value - DateTimeOffset value
        Throws:
        SQLServerException - if an error occurs
      • setDateTimeOffset

        void setDateTimeOffset​(java.lang.String parameterName,
                               DateTimeOffset value,
                               int scale)
                        throws SQLServerException
        Sets parameter parameterName to DateTimeOffset value.
        Parameters:
        parameterName - the name of the parameter
        value - DateTimeOffset value
        scale - the scale of the parameter
        Throws:
        SQLServerException - if an error occurs
      • setDateTimeOffset

        void setDateTimeOffset​(java.lang.String parameterName,
                               DateTimeOffset value,
                               int scale,
                               boolean forceEncrypt)
                        throws SQLServerException
        Sets parameter parameterName to DateTimeOffset value.
        Parameters:
        parameterName - the name of the parameter
        value - DateTimeOffset value
        scale - the scale of the parameter
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if an error occurs
      • setTime

        void setTime​(java.lang.String parameterName,
                     java.sql.Time value,
                     int scale)
              throws SQLServerException
        Sets the designated parameter to the given java.sql.Time value. The driver converts this to an SQL TIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        scale - the scale of the column
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTime(int)
      • setTime

        void setTime​(java.lang.String parameterName,
                     java.sql.Time value,
                     int scale,
                     boolean forceEncrypt)
              throws SQLServerException
        Sets the designated parameter to the given java.sql.Time value. The driver converts this to an SQL TIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        scale - the scale of the column
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        CallableStatement.getTime(int)
      • setDateTime

        void setDateTime​(java.lang.String parameterName,
                         java.sql.Timestamp value)
                  throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL DATETIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setDateTime

        void setDateTime​(java.lang.String parameterName,
                         java.sql.Timestamp value,
                         boolean forceEncrypt)
                  throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL DATETIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setSmallDateTime

        void setSmallDateTime​(java.lang.String parameterName,
                              java.sql.Timestamp value)
                       throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL SMALLDATETIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setSmallDateTime

        void setSmallDateTime​(java.lang.String parameterName,
                              java.sql.Timestamp value,
                              boolean forceEncrypt)
                       throws SQLServerException
        Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL SMALLDATETIME value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setUniqueIdentifier

        void setUniqueIdentifier​(java.lang.String parameterName,
                                 java.lang.String guid)
                          throws SQLServerException
        Sets the designated parameter to the given String value. The driver converts this to an SQL uniqueIdentifier value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        guid - the parameter value
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setUniqueIdentifier

        void setUniqueIdentifier​(java.lang.String parameterName,
                                 java.lang.String guid,
                                 boolean forceEncrypt)
                          throws SQLServerException
        Sets the designated parameter to the given String value. The driver converts this to an SQL uniqueIdentifier value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        guid - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setBytes

        void setBytes​(java.lang.String parameterName,
                      byte[] value,
                      boolean forceEncrypt)
               throws SQLServerException
        Sets the designated parameter to the given Java array of bytes. The driver converts this to an SQL VARBINARY or LONGVARBINARY (depending on the argument's size relative to the driver's limits on VARBINARY values) when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setByte

        void setByte​(java.lang.String parameterName,
                     byte value,
                     boolean forceEncrypt)
              throws SQLServerException
        Sets the designated parameter to the given Java byte value. The driver converts this to an SQL TINYINT value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setString

        void setString​(java.lang.String parameterName,
                       java.lang.String value,
                       boolean forceEncrypt)
                throws SQLServerException
        Sets the designated parameter to the given Java String value. The driver converts this to an SQL VARCHAR or LONGVARCHAR value (depending on the argument's size relative to the driver's limits on VARCHAR values) when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setMoney

        void setMoney​(java.lang.String parameterName,
                      java.math.BigDecimal value)
               throws SQLServerException
        Sets the designated parameter to the given Java java.math.BigDecimal value. The driver converts this to an SQL Money value.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setMoney

        void setMoney​(java.lang.String parameterName,
                      java.math.BigDecimal value,
                      boolean forceEncrypt)
               throws SQLServerException
        Sets the designated parameter to the given Java java.math.BigDecimal value. The driver converts this to an SQL Money value.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setSmallMoney

        void setSmallMoney​(java.lang.String parameterName,
                           java.math.BigDecimal value)
                    throws SQLServerException
        Sets the designated parameter to the given Java java.math.BigDecimal value. The driver converts this to an SQL smallMoney value.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setSmallMoney

        void setSmallMoney​(java.lang.String parameterName,
                           java.math.BigDecimal value,
                           boolean forceEncrypt)
                    throws SQLServerException
        Sets the designated parameter to the given Java java.math.BigDecimal value. The driver converts this to an SQL smallMoney value.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setBigDecimal

        void setBigDecimal​(java.lang.String parameterName,
                           java.math.BigDecimal value,
                           int precision,
                           int scale)
                    throws SQLServerException
        Sets the designated parameter to the given java.math.BigDecimal value. The driver converts this to an SQL NUMERIC value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        precision - the precision of the column
        scale - the scale of the column
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setBigDecimal

        void setBigDecimal​(java.lang.String parameterName,
                           java.math.BigDecimal value,
                           int precision,
                           int scale,
                           boolean forceEncrypt)
                    throws SQLServerException
        Sets the designated parameter to the given java.math.BigDecimal value. The driver converts this to an SQL NUMERIC value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        precision - the precision of the column
        scale - the scale of the column
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setDouble

        void setDouble​(java.lang.String parameterName,
                       double value,
                       boolean forceEncrypt)
                throws SQLServerException
        Sets the designated parameter to the given Java double value. The driver converts this to an SQL DOUBLE value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setFloat

        void setFloat​(java.lang.String parameterName,
                      float value,
                      boolean forceEncrypt)
               throws SQLServerException
        Sets the designated parameter to the given Java float value. The driver converts this to an SQL FLOAT value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setInt

        void setInt​(java.lang.String parameterName,
                    int value,
                    boolean forceEncrypt)
             throws SQLServerException
        Sets the designated parameter to the given Java int value. The driver converts this to an SQL INTEGER value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setLong

        void setLong​(java.lang.String parameterName,
                     long value,
                     boolean forceEncrypt)
              throws SQLServerException
        Sets the designated parameter to the given Java long value. The driver converts this to an SQL BIGINT value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setShort

        void setShort​(java.lang.String parameterName,
                      short value,
                      boolean forceEncrypt)
               throws SQLServerException
        Sets the designated parameter to the given Java short value. The driver converts this to an SQL SMALLINT value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setBoolean

        void setBoolean​(java.lang.String parameterName,
                        boolean value,
                        boolean forceEncrypt)
                 throws SQLServerException
        Sets the designated parameter to the given Java boolean value. The driver converts this to an SQL BIT or BOOLEAN value when it sends it to the database.
        Parameters:
        parameterName - the name of the parameter
        value - the parameter value
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
      • setStructured

        void setStructured​(java.lang.String parameterName,
                           java.lang.String tvpName,
                           SQLServerDataTable tvpDataTable)
                    throws SQLServerException
        Populates a table valued parameter passed to a stored procedure with a data table.
        Parameters:
        parameterName - the name of the parameter
        tvpName - the name of the type TVP
        tvpDataTable - the data table object
        Throws:
        SQLServerException - when an error occurs
      • setStructured

        void setStructured​(java.lang.String parameterName,
                           java.lang.String tvpName,
                           java.sql.ResultSet tvpResultSet)
                    throws SQLServerException
        Populates a table valued parameter passed to a stored procedure with a ResultSet retrieved from another table
        Parameters:
        parameterName - the name of the parameter
        tvpName - the name of the type TVP
        tvpResultSet - the source result set object
        Throws:
        SQLServerException - when an error occurs
      • setStructured

        void setStructured​(java.lang.String parameterName,
                           java.lang.String tvpName,
                           ISQLServerDataRecord tvpDataRecord)
                    throws SQLServerException
        Populates a table valued parameter passed to a stored procedure with an ISQLServerDataRecord object.
        Parameters:
        parameterName - the name of the parameter
        tvpName - the name of the type TVP
        tvpDataRecord - ISQLServerDataRecord is used for streaming data and the user decides how to use it. tvpDataRecord is an ISQLServerDataRecord object.the source result set object
        Throws:
        SQLServerException - when an error occurs
      • registerOutParameter

        void registerOutParameter​(java.lang.String parameterName,
                                  java.sql.SQLType sqlType,
                                  int precision,
                                  int scale)
                           throws SQLServerException
        Registers the parameter in ordinal position index to be of JDBC type sqlType. All OUT parameters must be registered before a stored procedure is executed.

        The JDBC type specified by sqlType for an OUT parameter determines the Java type that must be used in the get method to read the value of that parameter.

        Parameters:
        parameterName - the name of the parameter
        sqlType - the JDBC type code defined by SQLType to use to register the OUT Parameter.
        precision - the sum of the desired number of digits to the left and right of the decimal point. It must be greater than or equal to zero.
        scale - the desired number of digits to the right of the decimal point. It must be greater than or equal to zero.
        Throws:
        SQLServerException - If any errors occur.
      • registerOutParameter

        void registerOutParameter​(int parameterIndex,
                                  java.sql.SQLType sqlType,
                                  int precision,
                                  int scale)
                           throws SQLServerException
        Registers the parameter in ordinal position index to be of JDBC type sqlType. All OUT parameters must be registered before a stored procedure is executed.

        The JDBC type specified by sqlType for an OUT parameter determines the Java type that must be used in the get method to read the value of that parameter.

        Parameters:
        parameterIndex - the first column is 1, the second is 2, ...
        sqlType - the JDBC type code defined by SQLType to use to register the OUT Parameter.
        precision - the sum of the desired number of digits to the left and right of the decimal point. It must be greater than or equal to zero.
        scale - the desired number of digits to the right of the decimal point. It must be greater than or equal to zero.
        Throws:
        SQLServerException - If any errors occur.
      • registerOutParameter

        void registerOutParameter​(int parameterIndex,
                                  int sqlType,
                                  int precision,
                                  int scale)
                           throws SQLServerException
        Registers the parameter in ordinal position index to be of JDBC type sqlType. All OUT parameters must be registered before a stored procedure is executed.

        The JDBC type specified by sqlType for an OUT parameter determines the Java type that must be used in the get method to read the value of that parameter.

        Parameters:
        parameterIndex - the first column is 1, the second is 2, ...
        sqlType - the JDBC type code defined by SQLType to use to register the OUT Parameter.
        precision - the sum of the desired number of digits to the left and right of the decimal point. It must be greater than or equal to zero.
        scale - the desired number of digits to the right of the decimal point. It must be greater than or equal to zero.
        Throws:
        SQLServerException - If any errors occur.
      • registerOutParameter

        void registerOutParameter​(java.lang.String parameterName,
                                  int sqlType,
                                  int precision,
                                  int scale)
                           throws SQLServerException
        Registers the parameter in ordinal position index to be of JDBC type sqlType. All OUT parameters must be registered before a stored procedure is executed.

        The JDBC type specified by sqlType for an OUT parameter determines the Java type that must be used in the get method to read the value of that parameter.

        Parameters:
        parameterName - the name of the parameter
        sqlType - the JDBC type code defined by SQLType to use to register the OUT Parameter.
        precision - the sum of the desired number of digits to the left and right of the decimal point. It must be greater than or equal to zero.
        scale - the desired number of digits to the right of the decimal point. It must be greater than or equal to zero.
        Throws:
        SQLServerException - If any errors occur.
      • setObject

        void setObject​(java.lang.String parameterName,
                       java.lang.Object value,
                       java.sql.SQLType jdbcType,
                       int scale,
                       boolean forceEncrypt)
                throws SQLServerException
        Sets the value of the designated parameter with the given object.

        The given Java object will be converted to the given targetSqlType before being sent to the database. If the object has a custom mapping (is of a class implementing the interface SQLData), the JDBC driver should call the method SQLData.writeSQL to write it to the SQL data stream. If, on the other hand, the object is of a class implementing Ref, Blob, Clob, NClob, Struct, java.net.URL, or Array, the driver should pass it to the database as a value of the corresponding SQL type.

        Note that this method may be used to pass datatabase- specific abstract data types.

        Parameters:
        parameterName - the name of the parameter
        value - the object containing the input parameter value
        jdbcType - the SQL type (as defined in java.sql.Types) to be sent to the database. The scale argument may further qualify this type.
        scale - the scale of the column.
        forceEncrypt - If the boolean forceEncrypt is set to true, the query parameter will only be set if the designation column is encrypted and Always Encrypted is enabled on the connection or on the statement. If the boolean forceEncrypt is set to false, the driver will not force encryption on parameters.
        Throws:
        SQLServerException - if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
        See Also:
        Types, CallableStatement.getObject(int)