文件系统错误(12)

时间:2011-03-30 03:31:01

标签: database blackberry

我在创建sqlite数据库时在blackberry应用程序中遇到了文件系统错误(12)。可以PLZ帮我解决那个错误

4 个答案:

答案 0 :(得分:0)

使用您需要的sqlite创建数据库 URI对象和路径

您需要使用模拟器

创建SD卡

DBNAME = “NameOfDB.db”; 路径= “文件:/// SD卡/数据库/” + DBNAME; uri = URI.create(path);

希望这能解决您的问题

答案 1 :(得分:0)

我的同事刚刚撰写了这篇关于Using SQLite in Blackberry Applications的精彩文章。它涉及文件系统错误12,以及在黑莓中不能使用SQLite的情况。

答案 2 :(得分:0)

如果您使用模拟器运行应用程序,请首先创建一个文件夹(例如)SDCard,然后创建一个子文件夹数据库。 当运行应用程序时,点菜单'模拟'>更改SDCard,单击“添加目录”,然后浏览文件夹SD卡并选择它,然后运行该应用程序。

如果您使用手机进行debeg,请在取消后,断开代码与手机的连接,然后再运行。 您还可以使用“质量模式”(使用代码连接到系统时)检查手机上是否创建了数据库。

答案 3 :(得分:0)

解决方案文件系统错误12:

要打开数据库,您可以在theopenmethod类中使用theopenOrCreatemethodDatabaseFactory

您可以打开与数据库的多个只读连接,但只能同时进行一次读写连接。

如果要以读写和只读方式打开数据库,请先将其打开为读写。尝试在数据库已经打开时以读写方式打开(以读写或只读方式)将生成“文件系统错误12”,这表示尝试打开多个读写连接到同一个数据库。

要关闭数据库,请使用close方法。为了确保始终调用close,您应该在finally块中调用它。

Database _db = null;
public static final String DBName = "file:///SDCard/Mobion/mobion_music.db";

URI uri = URI.create(DBName);
if (!DatabaseFactory.exists(uri))
{
  createDB(uri);// create database DBName
}
else
{
  _db = DatabaseFactory.open(uri, true);
  _db.close();
  _db = DatabaseFactory.open(uri);
}