docs-v2/content/flux/v0/write-data/sql/sap-hana.md

2.7 KiB

title list_title description menu weight related list_code_example
Write to SAP HANA SAP HANA Use [`sql.to()`](/flux/v0/stdlib/sql/to/) with the `hdb` driver to write data to SAP HANA.
flux_v0
name parent identifier
SAP HANA write-to-sql write-sap-hana
101
/flux/v0/stdlib/sql/to/
```js import "sql" data |> sql.to( driverName: "hdb", dataSourceName: "hdb://username:password@myserver:30015", table: "SCHEMA.TABLE", ) ```

To write data to SAP HANA with Flux:

  1. Import the sql package.

  2. Pipe-forward data into sql.to() and provide the following parameters:

    • driverName: hdb
    • dataSourceName: See data source name
    • table: Table to write to
    • batchSize: Number of parameters or columns that can be queued within each call to Exec (default is 10000)
import "sql"
  
data
    |> sql.to(
        driverName: "hdb",
        dataSourceName: "hdb://username:password@myserver:30015",
        table: "SCHEMA.TABLE",
    )

SAP HANA data source name

The hdb driver uses the following DSN syntaxes (also known as a connection string):

hdb://<user>:<password>@<host>:<port>?<connection-property>=<value>&<connection-property>=<value>&...
hdb://<user>:<password>@<host>:<port>?DATABASENAME=<tenant-db-name>
hdb://?KEY=<keyname>

Flux to SAP HANA data type conversion

sql.to() converts Flux data types to SAP HANA data types.

Flux data type SAP HANA data type
float DOUBLE
int BIGINT
string NVARCHAR(5000)
bool BOOLEAN
time {{< req text="*" color="magenta" >}} TIMESTAMP

{{< req text="*" color="magenta" >}} The SAP HANA TIMESTAMP data type does not store time zone information and SAP strongly discourages storing data in the local time zone. For more information, see Timestamps in SAP HANA.