You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter使用sqflite报错:databaseFactory未初始化,求解决方案

sqflite 初始化错误解决办法

问题描述

执行var databasesPath = await getDatabasesPath();或直接调用openDatabase时抛出如下错误:

Exception has occurred.
StateError (Bad state: databaseFactory not initialized
databaseFactory is only initialized when using sqflite. When using sqflite_common_ffi
You must call databaseFactory = databaseFactoryFfi; before using global openDatabase API
)

当前依赖配置:

dependencies:
  flutter:
    sdk: flutter
  sqflite: ^2.2.8
  path: ^1.8.2

补充说明:未使用sqflite_common_ffi,同一项目在其他机器可正常运行,尝试过官方示例仍出现相同错误。

解决步骤

  • 清理项目缓存与依赖

    1. 删除项目根目录下的pubspec.lock文件
    2. 执行命令:flutter clean
    3. 重新拉取依赖:flutter pub get
  • 对齐Flutter环境版本

    1. 查看当前Flutter版本:flutter --version
    2. 与正常运行项目的机器版本对齐,可使用flutter downgrade <目标版本号>或flutter upgrade调整
  • 检查代码导入
    排查所有dart文件的导入语句,确保没有意外引入sqflite_common_ffi相关代码,如有则移除

  • 强制重新构建
    运行项目时添加参数跳过构建缓存:flutter run --no-build-cache

内容的提问来源于stack exchange,提问作者Windschief

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 08:12:00