Android酱油笔记之SQLiteDatabase
2012-12-29 12:56
267 查看
Android提供了SQLiteDatabase代表数据库,当SQLiteDatabase和指定数据库实现某种联系,接下来就可以使用SQLiteDatabase对象来管理和操作数据库。
(1).SQLiteDatabase有以下的静态方法来打开一个文件对应的数据库:
static SQLiteDatabase openDatabase(String path,SQLiteDatabase.CursorFactory factory,int flags):打开地址为path的数据库文件。
static SQLiteDatabase openOrCreateDatabase(File file,SQLiteDatabase.CursorFactory factory):打开或创建file所代表的SQLite数据库文件
static SQLiteDatabase openOrCreateDatabase(String path,SQLiteDatabase.CursorFactory factory):打开或创建path所代表的SQLite数据库文件
(2).在代码中绑定了SQLiteDatabase对象后,接下来可以使用以下方法操作和管理数据库:
execSQL(String sql,Object[] bindArgs):执行带占位符的SQL语句
execSQL(String sql):执行SQL语句
insert(String table,String nullColumnHack,ContentValues values):向table表中插入数据
update(String table,ContentValues values,String whereClause,String[] whereArgs):更新table表中的特定数据
delete(String table,String whereClause,String[] whereArgs):删除table表中的特定数据
Cursor query(String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy):对table表执行查询
Cursor query(String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy,String limit):对table表执行查询,limit控制至多查询几条记录
Cursor query(boolean distinct,String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy,String limit):对table表执行查询,limit控制至多查询几条记录,distinct控制是否去除重复值
rawQuery(String sql,String[] selectionArgs):执行带占位符的SQL查询
beginTransaction():开始事务
endTransaction():结束事务
(3).使用SQLiteDatabase操作数据库
如果test.db3文件存在,则打开该数据库,如果该文件不存在,则创建该数据库,而null参数表示使用默认的工厂
其返回一个SQLiteDatabase对象,可以实行以下操作
该代码创建了一个名为mytable的表,其execSQL可执行任意合法的SQL语句
读取数据库
(1).SQLiteDatabase有以下的静态方法来打开一个文件对应的数据库:
static SQLiteDatabase openDatabase(String path,SQLiteDatabase.CursorFactory factory,int flags):打开地址为path的数据库文件。
static SQLiteDatabase openOrCreateDatabase(File file,SQLiteDatabase.CursorFactory factory):打开或创建file所代表的SQLite数据库文件
static SQLiteDatabase openOrCreateDatabase(String path,SQLiteDatabase.CursorFactory factory):打开或创建path所代表的SQLite数据库文件
(2).在代码中绑定了SQLiteDatabase对象后,接下来可以使用以下方法操作和管理数据库:
execSQL(String sql,Object[] bindArgs):执行带占位符的SQL语句
execSQL(String sql):执行SQL语句
insert(String table,String nullColumnHack,ContentValues values):向table表中插入数据
update(String table,ContentValues values,String whereClause,String[] whereArgs):更新table表中的特定数据
delete(String table,String whereClause,String[] whereArgs):删除table表中的特定数据
Cursor query(String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy):对table表执行查询
Cursor query(String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy,String limit):对table表执行查询,limit控制至多查询几条记录
Cursor query(boolean distinct,String table,String columns,String selections,String[] selectionArgs,String groupBy,String having,String orderBy,String limit):对table表执行查询,limit控制至多查询几条记录,distinct控制是否去除重复值
rawQuery(String sql,String[] selectionArgs):执行带占位符的SQL查询
beginTransaction():开始事务
endTransaction():结束事务
(3).使用SQLiteDatabase操作数据库
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(“test.db3”,null);
如果test.db3文件存在,则打开该数据库,如果该文件不存在,则创建该数据库,而null参数表示使用默认的工厂
其返回一个SQLiteDatabase对象,可以实行以下操作
String sql = “create table mytable(id integer primary key,text varchar(255))”; db.execSQL(sql);
该代码创建了一个名为mytable的表,其execSQL可执行任意合法的SQL语句
读取数据库
List sList = new ArrayList<String>(); try{ SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase("test.db3", null); Cursor cur = database.rawQuery("SELECT value FROM t1", null); while(cur.moveToNext()) { int columnIndex = cur.getColumnIndex("value"); String str = cur.getString(columnIndex); sList.add(str); }catch(SQLException E){ E.printStackTrace(); }
相关文章推荐
- Android(java)学习笔记141:SQLiteDatabase的query方法参数分析
- 【Android基础笔记13】SQLiteDatabase
- Android开发总结笔记 SQLiteDataBase 2-3
- android笔记 SQLiteDatabase的几个重要方法的参数列表
- Android SQLiteDatabase中query、insert、update、delete方法参数说明
- 我的android 第14天 - 使用SQLiteDatabase操作SQLite数据库
- Android数据存储之SQLite Database(一)
- Android笔记之SQLite
- Android使用SQLiteDatabase直接存取数据与图像
- android.database.sqlite.SQLiteException: near "where": syntax error (code 1): ,
- Android 数据库SQLiteDatabase的使用
- Android 高手进阶教程(十三)之----Android 数据库SQLiteDatabase的使用!
- Android SQLiteDatabase的使用模板
- Android SQLite数据库 笔记
- Android SqliteDatabase 奇怪问题
- android SQLiteDatabase
- Android中的SQLiteDatabase,ContentProvider和ContentResolver
- android SQLiteDatabase
- android小问题--------------------SQLiteDatabase.insert(table, nullColumnHack, values)参数
- Android笔记 SQLite总结 ,字带数据库,附记事本,字典小程序