Skip to content

Latest commit

 

History

History
43 lines (33 loc) · 1.61 KB

RELEASENOTES.md

File metadata and controls

43 lines (33 loc) · 1.61 KB

Release Notes

v1.0.0

Incompatible changes

Removal of already deprecated driver.NullTime alias (please use sql.NullTime instead).

Bulk operations:

  • The following bulk operations are no longer supported:
    • via query ("bulk insert ...")
    • via named arguments (Flush / NoFlush)
    • via 'many' supporting one and two dimensional slices, arrays
  • Please use the following bulk operations instead:
    • via extended parameter list with (len(args)%'#of paramerters' == 0
    • via function argument (func(args []any) error)

Stored procedures:

  • Calling stored procedures with sql.Query methods are no longer supported.
  • Please use sql.Exec methods instead and sql.Rows for table output parameters.

New features:

  • Stored procedures executed by sql.Exec with parameters do

    • support named parameters and
    • support out output parameters
  • Custom types for reading Lobs

    Whereas string and []byte types are supported as Lob input parameters for output parameters and query results (scan) the driver.Lob type was needed. With the help of one of the following functions a string, []byte or io.Writer based custom type can now be used as well:

    • driver.ScanLobBytes
    • driver.ScanLobString
    • driver.ScanLobWriter

    Example:

    // BytesLob defines a []byte based data type for scanning Lobs.
    type BytesLob []byte
    // Scan implements the database.sql.Scanner interface.
    func (b *BytesLob) Scan(arg any) error { return driver.ScanLobBytes(arg, (*[]byte)(b)) }