简介:Google为android的较大数据的处理提供了SQLlite, 他在数据存储、管理、维护、等各方面都相当出色功能也非常强大。
1.创建数据库
Android 为了让我们能够更加方便地管理数据库,专门提供了一个SQLiteOpenHelper 帮助类,借助这个类就可以非常简单地对数据库进行创建和升级
相关方法介绍
1 package com.example.winxin2; 2 3 import android.content.ContentValues; 4 import android.content.Context; 5 import android.database.Cursor; 6 import android.database.sqlite.SQLiteDatabase; 7 import android.database.sqlite.SQLiteDatabase.CursorFactory; 8 import android.database.sqlite.SQLiteOpenHelper; 9 10 11 public class DBAcitivity extends SQLiteOpenHelper{ 12 13 14 public static final String CREATE_MESSAGE ="create table mess(" + 15 "id int primary key,"+ 16 "tou1 varchar(30)," + 17 "userName varchar(30)," + 18 "lastMessage varchar(30)," + 19 "datetime varchar(30))"; 20 21 public DBAcitivity(Context context) { 22 super(context, "message.db", null, 1); //super(上下文,数据库,游标,数据库版本) 23 24 } 25 26 //一般用于初始化, 27 @Override 28 public void onCreate(SQLiteDatabase db) { 29 db.execSQL(CREATE_MESSAGE); //下面也可以加入sql语句 30 } 31 32 //升级数据库版本时调用 33 @Override 34 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 35 // TODO Auto-generated method stub 36 37 } 38 39 40 41 }
调用在mainactivity.java代码如下
1 public class MainActivity extends Activity { 2 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 7 8 setContentView(R.layout.activity_main); 9 10 DBAcitivity dbc = new DBAcitivity(MainActivity.this); 11 dbc.getWritableDatabase(); 12 } 13 14 15 }
这就是一个简单的创建了一个message.db的数据库。
sqlliteDatabase增删改查的方法
(int) delete(String table,String whereClause,String[] whereArgs)
删除数据行的便捷方法
(long) insert(String table,String nullColumnHack,ContentValues values)
添加数据行的便捷方法
(int) update(String table, ContentValues values, String whereClause, String[] whereArgs)
更新数据行的便捷方法
(void) execSQL(String sql)
执行一个SQL语句,可以是一个select或其他的sql语句
(void) close()
关闭数据库
(Cursor) query(String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
查询指定的数据表返回一个带游标的数据集
(Cursor) rawQuery(String sql, String[] selectionArgs)
运行一个预置的SQL语句,返回带游标的数据集(与上面的语句最大的区别就是防止SQL注入)
如何使用
使用execSQL方式来实现 String sql = "insert into user(username,password) values ('Jack Johnson','iLovePopMuisc');
//插入操作的SQL语句 db.execSQL(sql);//执行SQL语句。 可以添加增删改查等sql语句
详细sqliteDatabase操作请http://www.2cto.com/kf/201306/218135.html(转载)。