文档文档

写入 SQLite

使用 Flux 将数据写入 SQLite

  1. 导入 sql

  2. 将数据管道传输到 sql.to() 中,并提供以下参数

    • driverName: sqlite3
    • dataSourceName: 请参阅数据源名称
    • table: 要写入的表
    • batchSize: 每次调用 Exec 时可以排队的参数或列数(设置为 999 或更少
import "sql"

data
    |> sql.to(
        driverName: "sqlite3",
        dataSourceName: "file:/path/to/example.db?cache=shared&mode=ro",
        table: "example_table",
    )

需要文件系统访问权限

要查询 SQLite,Flux 必须具有文件系统访问权限。如果 Flux 没有文件系统访问权限,查询将返回类似于以下错误之一的错误

  • Error: unable to open database file
  • failed to read file: filesystem service is uninitialized
  • An internal error has occurred

如果使用 InfluxDB CloudInfluxDB OSS,则 Flux 进程具有文件系统访问权限。


SQLite 数据源名称

sqlite3 驱动程序使用以下 DSN 语法(也称为连接字符串

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

Flux 到 SQLite 数据类型转换

sql.to() 将 Flux 数据类型转换为 SQLite 数据类型。

Flux 数据类型SQLite 数据类型
floatFLOAT
intINT
uintINT
stringTEXT
timeDATETIME

此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像当前一样使用它,而无需对代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一款开源、高速、近实时数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 构建于 Core 的基础上,增加了高可用性、读取副本、增强的安全性以及数据压缩功能,从而实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层级可供非商业家庭或业余爱好者使用。

有关更多信息,请查看