docs-v2/content/flux/v0/query-data/sql/cockroachdb.md

2.7 KiB

title list_title description menu weight related list_code_example
Query CockroachDB CockroachDB Use [`sql.from()`](/flux/v0/stdlib/sql/from/) with the `postgres` driver to query CockroachDB.
flux_v0
name parent
CockroachDB SQL databases
101
/flux/v0/stdlib/sql/from/
```js import "sql" sql.from( driverName: "postgres", dataSourceName: "postgresql://username:password@localhost:26257/cluster_name.defaultdb?sslmode=verify-full&sslrootcert=certs_dir/cc-ca.crt", query: "SELECT * FROM example_table", ) ```

To query CockroachDB with Flux:

  1. Import the sql package.

  2. Use sql.from() and provide the following parameters:

    • driverName: postgres
    • dataSourceName: See data source name
    • query: PSQL query to execute
import "sql"

sql.from(
    driverName: "postgres",
    dataSourceName:
        "postgresql://username:password@localhost:26257/cluster_name.defaultdb?sslmode=verify-full&sslrootcert=certs_dir/cc-ca.crt",
    query: "SELECT * FROM example_table",
)

CockroachDB data source name

The postgres driver uses the following DSN syntax (also known as a connection string) to connect to CockroachDB :

postgres://username:password@localhost:26257/cluster_name.defaultdb?sslmode=verify-full&sslrootcert=certs_dir/cc-ca.crt

{{% note %}} The postgres driver use the Go pq implementation to interact with CockroachDB. {{% /note %}}

CockroachDB to Flux data type conversion

sql.from() converts PostgreSQL and CockroachDB data types to Flux data types.

CockroachDB data type Flux data type
INT, BIGINT, SMALLINT, TINYINT, INT2, INT4, INT8, SERIAL2, SERIAL4, SERIAL8 int
FLOAT4, FLOAT8 float
DATE, TIME, TIMESTAMP time
BOOL bool
TEXT string

{{% caption %}} All other CockroachDB data types are converted to strings. {{% /caption %}}