【问题标题】:I converted the database file to a text file我将数据库文件转换为文本文件
【发布时间】:2018-04-02 09:59:35
【问题描述】:

我不小心将我的数据库文件转换为文本文件。打开后,显示我使用了错误的编码格式。任何帮助将不胜感激。

文件截图

【问题讨论】:

  • 它的 .db file 尝试在线查看 Sqlite 查看器。
  • 您可以在此处查看您的数据库,点击此链接inloop.github.io/sqlite-viewer
  • 谢谢先生,我可以看到数据库中的数据,但是每当我将 db 文件再次放入 assets 文件夹时,它就无法正常工作,并且显示上传的文件已加载错误的编码..

标签: java android database sqlite assets


【解决方案1】:

我不相信你有,因为:-

Android Studio 没有对浏览 SQLite 数据库的内置支持,因此它为什么会这样显示。它在记事本中可能看起来很相似。

这就是为什么您会在 Android Studio(或任何其他编辑器(除非它是支持 SQLite 文件的编辑器))中打开数据库的原因。

为了再次向您保证,这是我在 Android Studio 中打开的一个 SQLite 数据库(并且得到了相同的消息):-

如果您将文件加载到/在用于浏览/管理 SQLite 数据库的工具中打开文件,那么我希望该数据库可以访问。

在 App 中打开上述数据库允许 App 从数据库中输出以下内容:-

04-02 10:25:18.979 1837-1837/? D/OADB-HLPR: logDatabaseTableInformation initiated.
    Database contains Table testtable created by SQL CREATE TABLE `testtable` (
        `_id`   INTEGER PRIMARY KEY AUTOINCREMENT,
        `name`  TEXT,
        `timestamp` INTEGER
    )
    Table is testtable Column Count = 3 Row Count = 2
        Columns are :- _id name timestamp 
    Database contains Table sqlite_sequence created by SQL CREATE TABLE sqlite_sequence(name,seq)
    Table is sqlite_sequence Column Count = 2 Row Count = 1
        Columns are :- name seq 
    logDatabaseTableInformation completed.

如您所见,很多信息与屏幕截图相符。

同样,如果您在应用程序中访问数据库,那么它看起来就像预期的那样。

从显示的内容看来,您有一个名为 QuestionBank 的表,它有一个类型为 INTEGER PRIMARY KEY AUTOINCREMENT 的列,因为表 sqlite_sequence 存在。等等

我这样说是因为第一个字符是 SQLite 格式 3,根据 :-

0 16 标头字符串:“SQLite 格式 3\000”

Database File Format

一个常用的工具是DB Browser for SQLite。

【讨论】:

    猜你喜欢
    • 2015-06-13
    • 2021-10-30
    • 2016-04-23
    • 2014-07-30
    • 2013-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多