十二12 发表于 2016-12-1 08:46:47

android 对sqlite数据库的增删改查

Sqlite是android平台的一款轻量级的、嵌入式的、关系型数据库产品,以下是一些主要概念。
1.Sqlite通过文件保存数据库,创建的数据库文件默认存在在/data/data/<package>/databases/的文件夹下,一个文件就是一个数据库。2.一个数据库包含多个表格,一个表格包含不同的字段,字段类型等等,这与SQL数据库相似。  3.Sqlite记录没有顺序的概念,不存在第一第二类的概念,通过查询获取满足条件的记录。
  android平台下操作数据库的的相关类
  1、SQLiteOpenHelper 抽象类,用于创建和管理数据库以及版本,需要创建一个子类继承,该类封装了对数据库操作的基本方法,使用方便。
  2、SQLiteDatabase 数据库访问类,主要是对数据库的增删改查等常用操作,功能比SQLiteOpenHelper丰富,比如事务管理,分页等等。
  3、Cursor游标类,主要用来返回返回查询记录结果。
  本程序主要采用SQLiteDatabase类操作数 据库,介绍android 平台下Sqlite的多种使用方法。主要功能如图。

  图-1 Sqlite数据库界面的操作及其功能

  图-2 创建的数据库截图
  (1.)创建一个数据库

[*]//在文件夹/data/data/<package>/databases/创建一个students.db的数据库  
[*]//该类返回一个SQLiteDatabase,对那个数据库操作,就要打开该数据库  
[*]openOrCreateDatabase("students.db",SQLiteDatabase.CREATE_IF_NECESSARY, null);  
[*]   

  (2.)删除一个数据库
 

[*]//在Context环境中,删除students.db,该方法返回一个boolean类型  
[*]deleteDatabase("students.db");  
[*]   

  (3.)获取应用程序所有数据库的名称
 

[*]//在Context环境中,获取该应用程序的所有数据库名称(即databases文件夹下的数据库文件)  
[*]//该方法返回一个字符串数组  
[*]databaseList()  
[*]   

  (4.)重命名一个数据库
 

[*]//将数据库data.db重命名为renamedata.db  
[*]File f = getDatabasePath("data.db");  
[*]File renameFile=getDatabasePath("renamedata.db");  
[*]f.renameTo(renameFile);  
[*]   

  2.对表的操作
  (1.)创建一个表(sql语句中创建)
 

[*]mDb.execSQL("create table if not exists "+table+  
[*]" (id integer primary key autoincrement, "  
[*]+ "username text not null, info text not null);");  
[*]   

  (2.)删除一个表
 

[*]mDb.execSQL("drop table if exists " + table);  
[*]   

  (3.)修改表
  Sqlite是不能修改一个表的字段,不能删除一个表的字段,但是可以重命名一个表的名称,可以添加一个字段及其属性
  1.)重命名表
 

[*]mDb.execSQL("alter table " + oldTable + " rename to  "+ newTableName+";");  
[*]   

  2.)添加一列
 

[*]mDb.execSQL("alter table  " + table + " add column " + column +  type + " ;");  
[*]   

  (4.)获取一个数据库的所有表的名称
 

[*]mDb.rawQuery("select name from sqlite_master where type='table' order by name",null);  
[*]   

  3.对数据库记录的操作
  (1.)添加一条记录
 

[*]ContentValues values = new ContentValues();  
[*]values.put("username", user.getUsername());  
[*]values.put("info", user.getInfo());  
[*]mDb.insert(table, null, values);  
[*]   

  (2.)删除一条记录
 

[*]String whereClause =  "id=?";  
[*]String[] whereArgs = new String[] {String.valueOf(id)};  
[*]mDb.delete(table, whereClause, whereArgs);  
[*]   

  (3.)修改一条记录
 

[*]ContentValues values = new ContentValues();  
[*]values.put("username", username);  
[*]values.put("info", info);  
[*]String whereClause = "id=?";  
[*]String[] whereArgs = new String[] { String.valueOf(id) };  
[*]mDb.update(table, values, whereClause, whereArgs);  
[*]   

  (4.)查询一条数据
 

[*]String[] columns = new String[] { "id", "username", "info" };  
[*]String selection = "id=?";  
[*]String[] selectionArgs = { String.valueOf(id) };  
[*]String groupBy = null;  
[*]String having = null;  
[*]String orderBy = null;  
[*]mDb.query(table, columns, selection,selectionArgs, groupBy, having, orderBy);  
[*]   

  (5.)查询所有记录
 

[*]mDb.rawQuery("select * from "+table, null);  
[*]   

  SqliteActivity源码类如下(注意:在点击对数据记录的增删改查时要先create table ,否则会因为无法找到mytable表而报错)
  SqliteActivity.java
 

[*]package com.sqlite.main;  
[*]  
[*]import java.io.File;  
[*]import android.app.Activity;  
[*]import android.content.ContentValues;  
[*]import android.database.Cursor;  
[*]import android.database.SQLException;  
[*]import android.database.sqlite.SQLiteDatabase;  
[*]import android.os.Bundle;  
[*]import android.text.Html;  
[*]import android.view.View;  
[*]import android.view.View.OnClickListener;  
[*]import android.widget.Button;  
[*]import android.widget.TextView;  
[*]import android.widget.Toast;  
[*]  
[*]public class SqliteActivity extends Activity {  
[*]/** Called when the activity is first created. */  
[*]  
[*]    //SQLiteDatabase 引用  
[*]    SQLiteDatabase mDb;  
[*]    SQLiteDatabaseDao dao;  
[*]    //显示结果  
[*]    TextView show;  
[*]  
[*]    @Override  
[*]    public void onCreate(Bundle savedInstanceState) {  
[*]         super.onCreate(savedInstanceState);  
[*]         setContentView(R.layout.main);  
[*]        //默认创建一个users.db的数据库  
[*]         dao=new SQLiteDatabaseDao();  
[*]    
[*]    //创建一个数据库  
[*]    Button createDatabase=(Button)findViewById(R.id.createdatabase);  
[*]    createDatabase.setOnClickListener(createDatabaseClick);  
[*]    //获取所有数据库  
[*]    Button getDatabasesList=(Button)findViewById(R.id.getdatabaseslist);  
[*]    getDatabasesList.setOnClickListener(getDatabaseListClick);  
[*]    //重命名数据库  
[*]    Button renameDatabase=(Button)findViewById(R.id.renamedatabase);  
[*]    renameDatabase.setOnClickListener(renameDatabaseClick);  
[*]    //删除一个数据库  
[*]    Button removeDatabase=(Button)findViewById(R.id.removedatabase);  
[*]    removeDatabase.setOnClickListener(removeDatabaseClick);  
[*]    //创建一个表  
[*]    Button createTable=(Button)findViewById(R.id.createtable);  
[*]    createTable.setOnClickListener(createTableClick);  
[*]    //获取所有的表  
[*]    Button getTablesList=(Button)findViewById(R.id.gettableslist);  
[*]    getTablesList.setOnClickListener(getTablesListClick);  
[*]    //重命名一个表  
[*]    Button renameTable=(Button)findViewById(R.id.renametable);  
[*]    renameTable.setOnClickListener(renameTableClick);  
[*]    //删除一个表  
[*]    Button dropTable=(Button)findViewById(R.id.droptable);  
[*]    dropTable.setOnClickListener(dropTableClick);  
[*]    //为表添加一个字段  
[*]    Button addTableColumn=(Button)findViewById(R.id.addtablecolumn);  
[*]    addTableColumn.setOnClickListener(addTableColumnClick);  
[*]    //获取表的所有列  
[*]    Button getTableColumnsList=(Button)findViewById(R.id.gettablecolumnslist);  
[*]    getTableColumnsList.setOnClickListener(getTableColumnsListClick);  
[*]    //插入一条数据  
[*]    Button insertTable=(Button)findViewById(R.id.inserttable);  
[*]    insertTable.setOnClickListener(insertTableClick);  
[*]    //查询一条数据  
[*]    Button queryTable=(Button)findViewById(R.id.querytable);  
[*]    queryTable.setOnClickListener(queryTableClick);  
[*]    //更新一条数据  
[*]    Button updateTable=(Button)findViewById(R.id.updatetable);  
[*]    updateTable.setOnClickListener(updateTableClick);  
[*]    //删除一条数据  
[*]    Button delete=(Button)findViewById(R.id.delete);  
[*]    delete.setOnClickListener(deleteClick);  
[*]    //显示结果  
[*]    show=(TextView)findViewById(R.id.showresult);    
[*]}  
[*]  
[*]/************对按钮事件进行操作的事件响应****************/  
[*]  
[*]    //创建一个数据库  
[*]    OnClickListener createDatabaseClick=new OnClickListener() {  
[*] 
[*]        @Override  
[*]        public void onClick(View v) {  
[*]        // TODO Auto-generated method stub  
[*]        //创建一个名为students.db的数据库,主要是生成另外一个数据库以示区别  
[*]        openOrCreateDatabase("students.db",  SQLiteDatabase.CREATE_IF_NECESSARY, null);  
[*]        show.setText("创建的数据库路径为\n"  +getDatabasePath("students.db"));   
[*]    }  
[*]};  
[*]   
[*]//创建一个应用程序数据库的个数(list)的事件响应  
[*]OnClickListener getDatabaseListClick=new OnClickListener() {  
[*]    @Override  
[*]    public void onClick(View v) {  
[*]        // TODO Auto-generated method stub  
[*]        String []dblist=dao.getDatabasesList();  
[*]        String rs="";  
[*]        for(String s:dblist){  
[*]                 rs+=s+"\n";  
[*]        }  
[*]        show.setText("数据库名称为:\n"+ rs);    
[*]   }  
[*]};  
[*]    
[*]//重命名一个数据库的事件响应  
[*]OnClickListener renameDatabaseClick=new OnClickListener() {    
[*]    @Override  
[*]    public void onClick(View v) {  
[*]        // TODO Auto-generated method stub  
[*]        //创建一个data.db的数据库,并命名为renamedata.db数据库  
[*]        openOrCreateDatabase("data.db", SQLiteDatabase.CREATE_IF_NECESSARY, null);  
[*]        File f = getDatabasePath("data.db");  
[*]        File renameFile=getDatabasePath("renamedata.db");  
[*]        boolean b=f.renameTo(renameFile);  
[*]        if(b)  
[*]                 show.setText("data.db已经重命名为renamedata.db");  
[*]        else  
[*]        show.setText("无法重命名");  
[*]    }  
[*]};    
[*]  
[*]//删除一个数据库的事件响应  
[*]OnClickListener removeDatabaseClick=new OnClickListener() {  
[*]    @Override  
[*]    public void onClick(View v) {  
[*]        // TODO Auto-generated method stub  
[*]        /删除students.db数据库  
[*]        dao.dropDatabase("students.db");  
[*]        //重新获取数据库名称  
[*]        String []dblist=dao.getDatabasesList();  
[*]        String rs="";  
[*]for(String s:dblist){  
[*]rs+=s+"\n";  
[*]}  
[*]show.setText("数据库students.db已经删除\n现在数据库的名称为:\n"+rs);  
[*]}  
[*]};  
[*]  
[*]//创建一个表的事件响应  
[*]  
[*]OnClickListener createTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]//在user.db数据库中插入mytable表,并添加相应的字段  
[*]dao.createTable(mDb, "mytable");  
[*]show.setText("数据库students.db已经创建mytable表\n");  
[*]  
[*]}  
[*]};  
[*]  
[*]  
[*]//获取一个数据库的所有表个数(list)的事件响应  
[*]  
[*]OnClickListener getTablesListClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]  
[*]//显示所有的表的数据  
[*]String tableNames=dao.getTablesList(mDb);  
[*]show.setText(tableNames);  
[*]  
[*]}  
[*]};  
[*]  
[*]//重命名一个表的事件响应  
[*]  
[*]OnClickListener renameTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]//创建一个testtable的表  
[*]dao.createTable(mDb, "testtable");  
[*]//将testtable重命名为newtable  
[*]boolean b=dao.alterTableRenameTable(mDb, "testtable", "newtable");  
[*]if(b)show.setText("testtable已经重命名为\nnewtable表\n");  
[*]else show.setText("newtable已经存在\n请删除(drop table)后重试");  
[*]}  
[*]};  
[*]  
[*]//删除一个表的事件响应  
[*]  
[*]OnClickListener dropTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]//删除    newtable表  
[*]dao.dropTable(mDb, "newtable");  
[*]//显示所有的表的数据  
[*]String tableNames=dao.getTablesList(mDb);  
[*]show.setText("newtable已经删除\n现在表名称为:\n"+tableNames);  
[*]}  
[*]};  
[*]  
[*]  
[*]//修改一个表(给表添加一个字段)的事件响应  
[*]  
[*]OnClickListener addTableColumnClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]//默认添加一个password字段,类型为varchar,长度为30  
[*]boolean b=dao.alterTableAddColumn(mDb, "mytable", "password", " varchar(30)");  
[*]if(b)show.setText("已经添加password字段\n字符类型为:varchar\n长度为:30");  
[*]else show.setText("mytable表中password字段已经存在");  
[*]}  
[*]};  
[*]  
[*]//获取一个表的所有列的名称事件响应  
[*]  
[*]OnClickListener getTableColumnsListClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]  
[*]String str=dao.getTableColumns(mDb);  
[*]show.setText("mytable表的列名:\n"+str);  
[*]}  
[*]};  
[*]  
[*]  
[*]//对一个表添加一个数据的事件响应  
[*]  
[*]OnClickListener insertTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]  
[*]User user=new User();  
[*]user.setUsername("Mr.Young");  
[*]user.setInfo("好学生");  
[*]dao.insert(mDb, "mytable", user);  
[*]  
[*]Cursor c=dao.getAllData(mDb, "mytable");  
[*]if(c.moveToLast()){  
[*]String id=c.getString(0);  
[*]String username=c.getString(1);  
[*]String info=c.getString(2);  
[*]  
[*]show.setText("最新添加的一条数据:\n"+"id:"+id+"\nusername:"+username+"\ninfo:"+info);  
[*]}  
[*]  
[*]}  
[*]};  
[*]  
[*]//查询一个表的所有数据记录的事件响应  
[*]  
[*]OnClickListener queryTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]//默认查询mytable所有数据  
[*]  
[*]Cursor c=dao.getAllData(mDb, "mytable");  
[*]String s="";  
[*]int columnsSize=c.getColumnCount();  
[*]String []columns=c.getColumnNames();  
[*]String columnsName="";  
[*]//获取表头  
[*]for (String col : columns) {  
[*]  
[*]columnsName+=col+"\u0020 \u0020";  
[*]}  
[*]//获取表的内容  
[*]while(c.moveToNext()){  
[*]  
[*]for(int i=0;i<columnsSize;i++){  
[*]s+=c.getString(i)+"\u0020 \u0020";  
[*]}  
[*]s+="<br>";  
[*]}  
[*]show.setText(Html.fromHtml("<h5>"+columnsName+"</h5>"+s));  
[*]}  
[*]};  
[*]  
[*]//更新一个表的数据的事件响应  
[*]  
[*]OnClickListener updateTableClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]Cursor c=dao.getAllData(mDb, "mytable");  
[*]if(c.moveToFirst()){  
[*]  
[*]int first=Integer.valueOf(c.getString(0));  
[*]  
[*]//默认修改第一条记录  
[*]dao.update(mDb, "mytable", first, "Yong Ming", "学习成绩优异");  
[*]Cursor u=dao.queryById(mDb, "mytable", first);  
[*]u.moveToFirst();  
[*]show.setText("id为:"+first+"的记录已经修改:\nid:"+first+"\nusername:"+u.getString(1)+"\ninfo:"+u.getString(2));  
[*]  
[*]}else  
[*]  
[*]show.setText("没有要更新的记录!请添加数据后再作修改");  
[*]}  
[*]};  
[*]  
[*]//删除一个表的一条数据的事件响应  
[*]  
[*]OnClickListener deleteClick=new OnClickListener() {  
[*]  
[*]@Override  
[*]public void onClick(View v) {  
[*]// TODO Auto-generated method stub  
[*]Cursor c=dao.getAllData(mDb, "mytable");  
[*]if(c.moveToLast()){  
[*]int last=Integer.valueOf(c.getString(0));  
[*]  
[*]//默认删除最后一条记录  
[*]boolean b=dao.delete(mDb, "mytable", last);  
[*]if(b)  
[*]show.setText("成功删除id为:\n"+last+"的记录!");  
[*]}  
[*]else  
[*]show.setText("没有要删除的记录!");  
[*]}  
[*]};  
[*]  
[*]  
[*]//退出时关闭数据库  
[*]@Override  
[*]public void finish() {  
[*]// TODO Auto-generated method stub  
[*]super.finish();  
[*]mDb.close();  
[*]}  
[*]  
[*]  
[*]  
[*]  
[*]  
[*]/******************* 
[*]* 
[*]* 
[*]* 
[*]* 对Sqlite数据库进行操作的类 
[*]* 
[*]* 
[*]* 
[*]* ****************/  
[*]  
[*]class SQLiteDatabaseDao {  
[*]  
[*]public SQLiteDatabaseDao(){  
[*]mDb=openOrCreateDatabase("users.db",  
[*]SQLiteDatabase.CREATE_IF_NECESSARY, null);  
[*]}  
[*]  
[*]/************ 对数据库的操作 ***********************/  
[*]  
[*]// 获取所有数据库的名称  
[*]public String[] getDatabasesList() {  
[*]  
[*]return databaseList();  
[*]}  
[*]  
[*]// 创建一个数据库  
[*]public void createDatabase(String db) {  
[*]  
[*]openOrCreateDatabase(db, SQLiteDatabase.CREATE_IF_NECESSARY, null);  
[*]}  
[*]  
[*]// 删除一个数据库  
[*]public void dropDatabase(String db) {  
[*]  
[*]try {  
[*]deleteDatabase(db);  
[*]  
[*]} catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "删除数据库失败",  
[*]Toast.LENGTH_LONG).show();  
[*]  
[*]}  
[*]}  
[*]  
[*]/************ 对数据库的表的属性添加修改操作 ***********************/  
[*]  
[*]// 获取某个数据库的表的名称  
[*]public String getTablesList(SQLiteDatabase mDb) {  
[*]  
[*]Cursor c = mDb  
[*].rawQuery(  
[*]"select name from sqlite_master where type='table' order by name",  
[*]null);  
[*]String str="";  
[*]while (c.moveToNext()) {  
[*]str+=c.getString(0)+"\n";  
[*]  
[*]}  
[*]return "表的名称为:\n"+str;  
[*]}  
[*]  
[*]// 创建一个表,默认创建一个username info字段的表,可以在后面的代码中添加相应的列  
[*]public void createTable(SQLiteDatabase mDb, String table) {  
[*]try {  
[*]mDb.execSQL("create table if not exists "+table+  
[*]" (id integer primary key autoincrement, "  
[*]+ "username text not null, info text not null);");  
[*]} catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "数据表创建失败",  
[*]Toast.LENGTH_LONG).show();  
[*]}  
[*]}  
[*]  
[*]// 删除一个表  
[*]public void dropTable(SQLiteDatabase mDb, String table) {  
[*]  
[*]try {  
[*]mDb.execSQL("drop table if exists " + table);  
[*]  
[*]} catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "数据表删除失败",  
[*]Toast.LENGTH_LONG).show();  
[*]}  
[*]  
[*]}  
[*]  
[*]// 修改表--重命名表名  
[*]public boolean alterTableRenameTable(SQLiteDatabase mDb, String oldTable,  
[*]String newTableName) {  
[*]try {  
[*]mDb.execSQL("alter table " + oldTable + " rename to  "  
[*]+ newTableName+";");  
[*]  
[*]} catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "数据表重命名失败",  
[*]Toast.LENGTH_LONG).show();  
[*]return false;  
[*]}  
[*]  
[*]return true;  
[*]}  
[*]  
[*]// 修改表--添加一列  
[*]// @table 需要修改的table名  
[*]// @column 添加的列的名称  
[*]// @type 列的类型,如text,varchar等  
[*]public boolean alterTableAddColumn(SQLiteDatabase mDb, String table,  
[*]String column, String type) {  
[*]try {  
[*]mDb.execSQL("alter table  " + table + " add column " + column  
[*]+ type + " ;");  
[*]  
[*]} catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "数据表添加失败",  
[*]Toast.LENGTH_LONG).show();  
[*]return false;  
[*]}  
[*]  
[*]return true;  
[*]}  
[*]  
[*]// 获取表的列的名称  
[*]public String getTableColumns(SQLiteDatabase mDb) {  
[*]  
[*]Cursor c=dao.getAllData(mDb, "mytable");;  
[*]String []columns=c.getColumnNames();  
[*]String str="";  
[*]for (String s : columns) {  
[*]  
[*]str+=s+"\n";  
[*]  
[*]}  
[*]  
[*]return str;  
[*]}  
[*]  
[*]/************ 对数据库的表数据增删改查操作 ***********************/  
[*]// 添加一条数据,默认只向username和info字段添加数据  
[*]  
[*]public long insert(SQLiteDatabase mDb,String table,User user) {  
[*]  
[*]ContentValues values = new ContentValues();  
[*]values.put("username", user.getUsername());  
[*]values.put("info", user.getInfo());  
[*]return mDb.insert(table, null, values);  
[*]}  
[*]  
[*]/* 
[*]* 
[*]* 删除一条数据 
[*]*/  
[*]public boolean delete(SQLiteDatabase mDb,String table,int id) {  
[*]  
[*]String whereClause =  "id=?";  
[*]String[] whereArgs = new String[] {String.valueOf(id)};  
[*]try{  
[*]mDb.delete(table, whereClause, whereArgs);  
[*]}catch (SQLException e) {  
[*]Toast.makeText(getApplicationContext(), "删除数据库失败",  
[*]Toast.LENGTH_LONG).show();  
[*]return false;  
[*]}  
[*]return true;  
[*]}  
[*]  
[*]/* 
[*]* 
[*]* 修改一条数据 
[*]*/  
[*]public void update(SQLiteDatabase mDb,String table,int id,String username,String info)  
[*] {  
[*]  
[*]ContentValues values = new ContentValues();  
[*]values.put("username", username);  
[*]values.put("info", info);  
[*]String whereClause = "id=?";  
[*]String[] whereArgs = new String[] { String.valueOf(id) };  
[*]mDb.update(table, values, whereClause, whereArgs);  
[*]}  
[*]  
[*]public Cursor queryById(SQLiteDatabase mDb,String table,int id) {  
[*]  
[*]// 第一个参数String:表名  
[*]// 第二个参数String[]:要查询的列名  
[*]// 第三个参数String:查询条件  
[*]// 第四个参数String[]:查询条件的参数  
[*]// 第五个参数String:对查询的结果进行分组  
[*]// 第六个参数String:对分组的结果进行限制  
[*]// 第七个参数String:对查询的结果进行排序  
[*]String[] columns = new String[] { "id", "username", "info" };  
[*]String selection = "id=?";  
[*]String[] selectionArgs = { String.valueOf(id) };  
[*]String groupBy = null;  
[*]String having = null;  
[*]String orderBy = null;  
[*]return mDb.query(table, columns, selection,  
[*]selectionArgs, groupBy, having, orderBy);  
[*]}  
[*]  
[*]public Cursor getAllData(SQLiteDatabase mDb,String table) {  
[*]  
[*]//遍历表所有数据  
[*]return mDb.rawQuery("select * from "+table, null);  
[*]  
[*]  
[*]/** 如果需要返回指定的列,则执行以下语句 
[*]String[] columns = new String[] { "id","username", "info" }; 
[*]// 调用SQLiteDatabase类的query函数查询记录 
[*]return mDb.query(table, columns, null, null, null, null, 
[*]null); 
[*] 
[*]*/  
[*]  
[*]}  
[*]  
[*]}  
[*]  
[*]}  
页: [1]
查看完整版本: android 对sqlite数据库的增删改查