在数据库浏览器中打开文件时,React Native expo sqlite/next 数据未显示在数据库文件中

问题描述 投票:0回答:1

我是 React Native Expo 的新手,我正在尝试使用 SQLite 在我的应用程序中本地存储数据。我按照教程并设法使用 expo-sqlite 包设置数据库。一切似乎都工作正常,但是当我尝试使用 DB Browser for SQLite 检查 SQLite 数据库文件中的数据时,我看不到我插入的任何数据。

这是我的代码的简化版本:

async function insertData(data_to_submit) {
    try {
      const result = db.runAsync(
        `INSERT INTO BizUser (
          WhiteLabelURL, BizUser, BizUserPassword, BizUserName, BizUserEmail, 
          BizUserCell, BizUserAddress, BizUserClass, BizLocationLatitude, 
          BizLocationLongitude, BizLocationDescription, BizFeaturedImage, 
          ActiveStatus, ActiveStatusDateTime, SignupDateTime, BizLastUpdate, 
          BizLastUpdateDateTime
        ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`,
        [
          data_to_submit.WhiteLabelURL,
          data_to_submit.BizUser,
          data_to_submit.BizUserPassword,
          data_to_submit.BizUserName,
          data_to_submit.BizUserEmail,
          data_to_submit.BizUserCell,
          data_to_submit.BizUserAddress,
          data_to_submit.BizUserClass,
          data_to_submit.BizLocationLatitude,
          data_to_submit.BizLocationLongitude,
          data_to_submit.BizLocationDescription,
          data_to_submit.BizFeaturedImage,
          data_to_submit.ActiveStatus,
          data_to_submit.ActiveStatusDateTime,
          data_to_submit.SignupDateTime,
          data_to_submit.BizLastUpdate,
          data_to_submit.BizLastUpdateDateTime,
        ]
      );

      const allUsers = await db.getAllAsync("SELECT * FROM BizUser");

      console.log("Data inserted successfully", result);
    } catch (error) {
      console.error("Error inserting data:", error);
    }
  }

尽管控制台日志显示数据已成功插入和检索,但当我在 DB Browser for SQLite 中打开 mydb.db 文件时,我看不到任何内容。

有人可以帮我理解为什么数据没有显示在数据库文件中吗?我是否遗漏了一个步骤或误解了 SQLite 如何与 React Native Expo 配合使用的某些内容?

任何建议或解释都会非常有帮助。非常感谢!

react-native expo expo-sqlite
1个回答
0
投票

我刚刚遇到了同样的问题,并意识到 expo-sqlite 正在根据您提供的数据库文件创建一个新的本地数据库。它实际上并不更新或写入原始源文件,它只是将其用作创建新数据库的种子。

希望有帮助。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.