SQLite存储数据(小细节)

打开SQLite 数据库两种方式: 

通过openOrCreateDatabase(String path, SQLiteDatabase.CursorFactory factory)方法创建数据库。

   1 SQLiteDatabase db =this.openOrCreateDatabase("test_db.db", Context.MODE_PRIVATE, null);
   2 SQLiteDatabase db2 = SQLiteDatabase.openOrCreateDatabase("/data/data/com.test/databases/test_db2.db3", null);
 如上两种方式均能创建数据库,this.openOrCreateDatabase是对SQLiteDatabase.openOrCreateDatabase而来,如代码所见,原生的SQLiteDatabase.openOrCreateDatabase()方法第一参数要求输入绝对路劲,而所有的数据库都是储存于“data/data/应用报名/databases”目录下,所以输入完全的绝对路劲是一件重复且繁杂的工作。采用this.openOrCreateDatabase则省去了此操作。执行操作后的结果如下图:
 SQLite存储数据(小细节)

另外还可以通过写一个继承SQLiteOpenHelper类的方式创建数据库,此种方式是一种更加进阶的创建方式,所以在此不做描述。

Android SQLite数据库判断某张表是否存在的语句:
1、可以在创建表之前判断,这样就不会重新创建,create table if not exists Student(name text primary key, code integer); 比平时多了if not exists
2、String sql = "select name from sqlite_master where type='table';";
Cursor cursor = db.rawQuery(sql, null);
  while(cursor.moveToNext()){
   //遍历出表名
   String name = cursor.getString(0);
   Log.i("System.out", name);
  }
3、String sql = "select count(*) as c from sqlite_master where type ='table' and name ='Student';";
Cursor cursor = db.rawQuery(sql, null);
    if(cursor.moveToNext()){
          int count = cursor.getInt(0);
          if(count>0){
               result = true;
           }
     }

Android sqlite3数据库管理工具

Android SDK的tools目录下提供了一个sqlite3.exe工具,这是一个简单的sqlite数据库管理工具。开发者可以方便的使用其对sqlite数据库进行命令行的操作。

程序运行生成的*.db文件一般位于"/data/data/项目名(包括所处包名)/databases/*.db",因此要对数据库文件进行操作需要先找到数据库文件:

1、进入shell 命令

adb shell

2、找到数据库文件

#cd data/data

#ls                --列出所有项目

#cd project_name   --进入所需项目名

#cd databases    

#ls                --列出现寸的数据库文件

3、进入数据库

#sqlite3 test_db   --进入所需数据库

会出现类似如下字样:

SQLite version 3.6.22

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite>

至此,可对数据库进行sql操作。

4、sqlite常用命令

>.databases        --产看当前数据库

>.tables           --查看当前数据库中的表

>.help             --sqlite3帮助

相关推荐