---
title: Query SQLite
description: Use sql.from() with the sqlite3 driver to query SQLite.
url: https://docs.influxdata.com/flux/v0/query-data/sql/sqlite/
estimated_tokens: 559
product: Flux
version: v0
publisher: InfluxData
canonical: https://docs.influxdata.com/flux/v0/query-data/sql/sqlite/
date: '2023-09-12T23:33:31-06:00'
lastmod: '2023-09-12T23:33:31-06:00'
---

To query [SQLite](https://www.sqlite.org/index.html) with Flux:

1. Import the [`sql` package](/flux/v0/stdlib/sql/).

2. Use [`sql.from()`](/flux/v0/stdlib/sql/from/) and provide the following parameters:

   * **driverName**: sqlite3
   * **dataSourceName**: *See [data source name](#sqlite-data-source-name)*
   * **query**: SQL query to execute

```js
import "sql"

sql.from(
    driverName: "sqlite3",
    dataSourceName: "file:/path/to/example.db?cache=shared&mode=ro",
    query: "SELECT * FROM example_table",
)
```

> [!Note]
> #### Requires file system access
>
> To query SQLite, Flux must have access to the filesystem.
> If Flux does not have access to the file system, the query will return an error
> similar to one of the following:
>
> * `Error: unable to open database file`
> * `failed to read file: filesystem service is uninitialized`
> * `An internal error has occurred`
>
> If using **InfluxDB Cloud** or **InfluxDB OSS**, the Flux process **does not**have access to the filesystem.

## SQLite data source name

The `sqlite3` driver uses the following DSN syntax (also known as a **connection string**):

```
file:/path/to/example.db?param=value
```

## SQLite to Flux data type conversion

`sql.from()` converts SQLite data types to Flux data types.

|           SQLite data type            |              Flux data type               |
|---------------------------------------|-------------------------------------------|
|INT, INTEGER, BIGINT, SMALLINT, TINYINT|   [int](/flux/v0/data-types/basic/int/)   |
|             FLOAT, DOUBLE             | [float](/flux/v0/data-types/basic/float/) |
|       DATETIME, TIMESTAMP, DATE       |  [time](/flux/v0/data-types/basic/time/)  |
|                 BOOL                  |   [int](/flux/v0/data-types/basic/int/)   |
|                 TEXT                  |[string](/flux/v0/data-types/basic/string/)|

All other SQLite data types are converted to strings.

#### Related

* [sql.from() function](/flux/v0/stdlib/sql/from/)
| SQLite data type | Flux data type |
| --- | --- |
| SQLite data type | Flux data type |
| INT, INTEGER, BIGINT, SMALLINT, TINYINT | int |
| FLOAT, DOUBLE | float |
| DATETIME, TIMESTAMP, DATE | time |
| BOOL | int |
| TEXT | string |
