2.2 KiB
2.2 KiB
| title | list_title | description | menu | weight | related | list_code_example | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Write to MySQL | MySQL | Use [`sql.to()`](/flux/v0/stdlib/sql/to/) with the `mysql` driver to write data to MySQL. |
|
101 |
|
```js import "sql" data |> sql.to( driverName: "mysql", dataSourceName: "user:password@tcp(localhost:3306)/db", table: "example_table", ) ``` |
To write data to MySQL with Flux:
-
Import the
sqlpackage. -
Pipe-forward data into
sql.to()and provide the following parameters:- driverName: mysql
- 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: "mysql",
dataSourceName: "user:password@tcp(localhost:3306)/db",
table: "example_table",
)
MySQL data source name
The mysql driver uses the following data source name (DSN) syntax (also known as a connection string):
username:password@tcp(localhost:3306)/dbname?param=value
Flux to MySQL data type conversion
sql.to() converts Flux data types to MySQL data types.
| Flux data type | MySQL data type |
|---|---|
| float | FLOAT |
| int | BIGINT |
| uint | BIGINT |
| string | TEXT(16383) |
| bool | BOOL (TINYINT) |
| time | DATETIME |
{{% note %}}
MySQL BOOL types
BOOL is a synonym supplied by MySQL for convenience.
MySQL stores BOOL values as TINYINT types so looking at the schema shows the
column type as TINYINT.
{{% /note %}}