Android存储方式之SQLite的使用

Android提供了五种存储方式,分别是文件、sharedPreference、网络、SQLite、ContentProvider。SQLite是一种轻型数据库,具有独立性、隔离性、跨平台、多语言接口、安全性等优点,目前应用较为广泛。现在主要说一下在Android中SQLite的使用。

首先,我新建一个数据库操作类DataBaseHelper,让他继承自SQLiteOpenHelper,然后复写其中的两个方法onCreate和onUpgrade。

 1 package com.example.sqlitedb;
 2 
 3 import android.content.Context;
 4 import android.database.sqlite.SQLiteDatabase;
 5 import android.database.sqlite.SQLiteDatabase.CursorFactory;
 6 import android.database.sqlite.SQLiteOpenHelper;
 7 
 8 public class DataBaseHelper extends SQLiteOpenHelper{
 9     
10     private final static String DBName="sqlite3.db";
11     private final static String TableName="";
12     private final static String firstname="provincial";
13     private final static String lastname="number";
14 
15     public DataBaseHelper(Context context, String name, CursorFactory factory,
16             int version) {
17         super(context, DBName, factory, version);
18         // TODO Auto-generated constructor stub
19     }
20 
21     @Override
22     public void onCreate(SQLiteDatabase db) {
23         //创建表
24         String sql=("CREATE TABLE"+TableName+"(INTEGER PRIMARY KEY AUTOINCREMENT,"+firstname+" VARCHAR, "+lastname+" SMALLINT)");
25         db.execSQL(sql);
26     }
27 
28     @Override
29     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
30         // 删除表
31         String sql = "DROP TABLE IF EXISTS " + TableName; 
32         db.execSQL(sql);34     }
35 
36 }

然后,使用sql语句来实现一些常用的SQLite的操作,具体如下:

 1     @Override
 2     public void onCreate(SQLiteDatabase db) {
 3           //创建表
 4           String sql="CREATE TABLE city (INTEGER PRIMARY KEY AUTOINCREMENT, provincial VARCHAR, number SMALLINT)";
 5           db.execSQL(sql);
 6           //插入数据
 7           //方法1:使用execSQL
 8           String sql1="insert into city (firstname,lastname) values (‘北京‘,‘20‘)";
 9           db.execSQL(sql1);
10           //方法2:使用insert
11           ContentValues cv=new ContentValues();
12           cv.put("provincial", "天津");
13           cv.put("number", 30);
14           db.insert("city", null, cv);
15           //修改数据
16           //1.使用execSQL
17           String sql2="update city set lastname = ‘25‘ where provincial=‘天津‘";
18           db.execSQL(sql2);
19           //2.使用insert
20           ContentValues cv1=new ContentValues();
21           cv1.put("provincial", "北京");
22           cv1.put("number", 30);
23           db.insert("city", null, cv);
24           //删除数据
25           String sql3 = "delete from city where provincial=‘北京‘";
26           db.execSQL(sql3);
27           //关闭数据库
28           db.close();
29     }

执行以上代码,会在/data/data/com.example.sqlitedb/databases目录下生成一个名为"sqlite3.db"的数据库文件。

 

 

 

 

 

 

Android存储方式之SQLite的使用,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。