【发布时间】:2016-03-29 16:26:01
【问题描述】:
我已经使用 SQlite Manager(Mozila 插件)创建了数据库,然后从 csv 文件导入一些数据,然后我导出数据库。
当我将数据库导入安卓模拟器时,数据库导入成功。但是,当我运行一些查询时,出现了错误文件已加密或不是数据库 这是我的代码:
public Cursor getTestData()
{
try
{
String sql ="SELECT * FROM `mlokasi` WHERE _id = 1";
Cursor mCur = myDataBase.rawQuery(sql, null);
if (mCur!=null)
{
mCur.moveToNext();
}
return mCur;
}
catch (SQLException mSQLException)
{
Log.e("Exception", "getTestData >>"+ mSQLException.toString());
throw mSQLException;
}
}
然后调用方法,如下所示:
Cursor testdata = myDbHelper.getTestData();
if (testdata.moveToFirst()) {
do {
Log.d("kab", testdata.getString(0));
} while (testdata.moveToNext());
}
怎么了?请帮忙,谢谢
【问题讨论】:
-
首先,你的查询是错误的。
mlokasi没有字符串分隔符。 -
我删除了字符串分隔符,但没有效果。
-
那么您要么使用加密保存了数据库,要么没有将正确的文件传递给数据库引擎。
-
我刚刚用 'UTF-8' 保存了数据库。那我该怎么办?
-
是的。伟大的答案。谢谢@Bob Malooga。我一直在尝试 .sqlite 数据库。然后,完美工作。我的错误是在使用 .sqlite 扩展名保存数据库时导出数据库。
标签: android database sqlite encryption