在代码中创建了一个本地数据库.它将设在哪里?


class DatabaseHelper {
  
  final databaseName = "app.db";
  String users =
      "create table users (userId INTEGER PRIMARY KEY AUTOINCREMENT, userName TEXT UNIQUE, userPassword TEXT)";
  Future<Database> initDB() async {
    final databasePath = await getDatabasesPath();
    final path = join(databasePath, databaseName);

    return openDatabase(path, version: 1, onCreate: (db, version) async {
      await db.execute(users);
     // await db.execute(noteTable);
    });
  }
}

一切正常,但如何在应用程序外打开它?

推荐答案

它将设在哪里?

它将位于data/data/the_package_name/databases文件夹中.<>

  • 注意,除了app.db文件之外,还可能存在app.db—wal和app.db—shm文件.如果app.db—wal文件不为空,则这是数据库的一部分.

一切正常,但如何在应用程序外打开它?

文件位于受保护的存储区中,因此通常无法在应用程序外访问它们.如果使用Android Studio模拟器,则可以通过应用程序判断器或设备资源管理器(这将允许复制文件)访问数据库.

Flutter相关问答推荐

当第二页在单独的小工具中使用Navigator.pop时,Navigator.push不起作用

如何让GridView.builder用另外两个小部件来占据屏幕的剩余部分

如何更改ElevatedButton的 colored颜色 以按下它?

创建后检索FiRestore文档ID

如何在WidgetRef引用外部的函数中使用Riverpod刷新数据

blocTest错误:没有从`when()`中调用方法存根

将列表<;Events>;从Flutter 应用程序中的函数传回EventLoader属性时出错

升级到Ffltter 3.16后,应用程序栏、背景 colored颜色 、按钮大小和间距都会发生变化

带有附加图像的ListTile

如何使用providerContainer监听/写入FutureProvider?

如何将 Flutter 项目迁移到具有多个插件的 Gradle 8?

在 Flutter 中,SpinEdit 叫什么?

什么最接近 Dart 的 List.asMap().forEach() 返回列表?

Paypal 支付网关添加带有 magento 2 网络详细信息用户名、密码、签名 Magento 2 的 flutter 应用程序?

Flutter RIverpod 奇怪地改变状态

在向 Google Route API 发送 HTTP Post 请求期间发生错误,

Flutter - 使用 pin 进行身份验证

Flutter:如何判断嵌套列表是否包含值

有没有办法帮助我修复类型 null 不是 Map 类型的子类型?

如何在Flutter 的 initState 中初始化 Firestore 查询