android中SQLite的基本操作

作为一名android初学者,对于如何操作android自带数据库SQLite做出了以下几点简单总结(学习内容主要来源于《android程序设计》):

 

1.数据库操作: (1).创建或打开数据库 openDatabase()方法用于打开指定的数据库,该方法有以下三个参数:

 

1>.path:用于指定数据库的路径,数据库不存在则会抛出FileNotFoundException异常。

 

2>.factory:用于构造查询时的游标,若factory为null,则表示使用默认的factory构造游标。

 

3>.flags:指定数据库的打开模式(OPEN_READONLY,OPEN_READWRITE,CREATE_IF_NECESSARY,NO_LOCALIZED_COLLATORS).

代码如下;SQLiteDatabase sqliteDatabase = SQLiteDatabase.openDatabase("theNew.db",null,NO_LOCALIZED_COLLATORS);

(2).删除数据库 deleteDatabase("theNew.db");

(3).关闭数据库 sqliteDatabase.close();

 

2.表操作

(1).创建表 String SQL_CT = "CREATE TABLE student (ID INTEGER PRIMARY KEY,age INTEGER,name TEXT)";

sqliteDatabase.exec(SQL_CT);

(2).删除表 String SQL_DROP_TABLE = "DROP TABLE table";

sqliteDatabase.execSQL(SQL_DROP_TABLE);

 

3.记录操作

(1).插入操作

1>.insert方法 insert(String table,String nullColumnHack,ContentValues values)

第一个参数:要插入的数据表的名称

第二个参数:空列的默认值

第三个参数:一个封装了列名称和列值的Map,代表一条记录信息。

代码如下: ContentValues contentValues = new ContentValues();

contentValues.put("ID",1);

contentValues.put("age",26);

contentValues.put("name","studentA");

sqliteDatabase.insert("student",null,contentValues);

2>.execSQL方法 String SQL_INSERT = " INSERT INTO student(ID,age,name) values (1,26,'StudentA')";

sqliteDatabase.execSQL(SQL_INSERT);

(2).更新记录

1>.update()方法 update(String table,ContentValues value,String whereClause,String[] whereArgs)

第一个参数:要更新的数据表的名称

第二个参数:更新的记录信息ContentValues对象

第三个参数:更新条件(where语句)

第四个参数:更新条件值数组。

修改StudentA的年龄为例(26改为25):

ContentValues contentValues = new ContentValues();

contentValues.put("ID",1);

contentValues.put("age",25);

contentValues.put("name","studentA");

sqliteDatabase.update("student",contentValues,"name="StudentA",null);

2>.execSQL方法 写出相应的SQL语句(参照以上几条).

(3).查询记录 代码如下:

public Cursor query(boolean distinct,String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit)

第一个参数:返回值是否只含有唯一值。

第二个参数:表名。

第三个参数:列名称数组

第四个参数:条件where语句,可含"?"通配符。

第五个参数:参数数组,可替换"?"通配符

第六个参数:分组列

第七个参数:分组条件

第八个参数:排序类

第九个参数:分页查询限制

 

Cursor游标常用方法:moveToNext(),moveToFirst(),moveToLast().

(4).删除记录

1>.delete()方法 delete(String table,String whereClause,String[] whereArgs)

第一个参数:表名

第二个参数:删除条件

第三个参数:删除条件参数数组

2>.execSQL 使用如上的SQL语句完成

posted @ 2016-04-05 16:38  2014551607-王思惠  阅读(181)  评论(0编辑  收藏  举报