我正在使用帮助器创建一个新的数据库,但是根据创建的文档应该在创建数据库时调用,但是它没有被正确调用.任何PLZ都可以帮我解决这个问题.Plz见下面的代码.
1)有没有办法创建数据库而不是使用帮助器,如果是这样plz建议我!2)在数据库创建中以及杀死数据库时将调用哪些回调?
OpenHelper(Context context)
{
super(context, "examplee.db", null, 1 );
SQLiteDatabase sqlite = null;
Log.w(TAG, "Openhelp database, ");
sqlite = context.openOrCreateDatabase("examplee.db", Context.MODE_PRIVATE, null );
Log.e ( TAG,"SQ lite database object "+sqlite );
}
public void onOpen(SQLiteDatabase db)
{
Log.e ( TAG,"On open called ");
}
@Override
public void onCreate(SQLiteDatabase db)
{
Log.w(TAG, " On create ");
//db.execSQL(sql);
//db.execSQL("CREATE TABLE " + TABLE_NAME + "(id INTEGER PRIMARY KEY, name TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
Log.w(TAG, "Upgrading database, this will drop tables and recreate.");
//db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
//onCreate(db);
}
Run Code Online (Sandbox Code Playgroud)
}
提前致谢,
这里有一个关于如何从模拟器中删除数据库文件的非常详细的描述(在实际的Android手机上调试非常相似).
运行你的模拟器.如果您遇到问题,那么您可以忽略此帮助信息的其余部分!
根据您的操作系统,启动命令行界面.
执行命令:'adb shell'(当然省略引号).这将带你进入Android Debug Bridge; 你的提示将改为简单的英镑符号.无论您的原始操作系统如何,您现在都处于简化的unix OS中.
你现在在你的模拟器中.输入命令'ls -l'以验证您是否在根目录中(您将看到与unix根目录系统非常相似的内容).
将目录更改为存储数据库文件的位置.假设您运行的程序位于软件包com.sillynames.myprogram5中,并且数据库文件名为"myblackbook.db".您将在目录中找到该文件:
/data/data/com.sillynames.myprogram5/databases/myblackbook.db
进入该目录后,只需通过'rm myblackbook.db'删除数据库即可.
希望这可以帮助!斯科特
| 归档时间: |
|
| 查看次数: |
3924 次 |
| 最近记录: |