Write to SQL Server
To write data to Microsoft SQL Server with Flux:
-
Import the
sql
package. -
Pipe-forward data into
sql.to()
and provide the following parameters:- driverName: sqlserver
- 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 is10000
)
import "sql"
data
|> sql.to(
driverName: "sqlserver",
dataSourceName: "sqlserver://user:password@localhost:1433?database=examplebdb",
table: "Example.Table",
)
SQL Server data source name
The sqlserver
driver uses the following DSN syntaxes (also known as a connection string):
sqlserver://username:password@localhost:1433?database=examplebdb
server=localhost;user id=username;database=examplebdb;
server=localhost;user id=username;database=examplebdb;azure auth=ENV
server=localhost;user id=username;database=examplebdbr;azure tenant id=77e7d537;azure client id=58879ce8;azure client secret=0143356789
SQL Server ADO authentication
Use one of the following methods to provide SQL Server authentication credentials as ActiveX Data Objects (ADO) DSN parameters:
- Retrieve authentication credentials from environment variables
- Retrieve authentication credentials from a file
- Specify authentication credentials in the DSN
- Use a Managed identity in an Azure VM
Retrieve authentication credentials from environment variables
azure auth=ENV
Retrieve authentication credentials from a file
InfluxDB Cloud and InfluxDB OSS do not have access to the underlying file system and do not support reading credentials from a file. To retrieve SQL Server credentials from a file, execute the query in the Flux REPL on your local machine.
azure auth=C:\secure\azure.auth
Specify authentication credentials in the DSN
# Example of providing tenant ID, client ID, and client secret token
azure tenant id=77...;azure client id=58...;azure client secret=0cf123..
# Example of providing tenant ID, client ID, certificate path and certificate password
azure tenant id=77...;azure client id=58...;azure certificate path=C:\secure\...;azure certificate password=xY...
# Example of providing tenant ID, client ID, and Azure username and password
azure tenant id=77...;azure client id=58...;azure username=some@myorg;azure password=a1...
Use a managed identity in an Azure VM
For information about managed identities, see Microsoft managed identities.
azure auth=MSI
Flux to SQL Server data type conversion
sql.to()
converts Flux data types to SQL Server data types.
Flux data type | SQL Server data type |
---|---|
float | FLOAT |
int | BIGINT |
uint | BIGINT |
string | VARCHAR(MAX |
bool | BIT |
time | DATETIMEOFFSET |
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for Flux and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.