android 中使用sqLite例子

今晚写了个sqLite的应用例子,粘一下代码,就不详细详述了。

package com.peidw.demo;

import java.io.FileNotFoundException;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.util.Log;

/**
*数据库操作
*
@author peidw2009-04-06
*
*/
public class DatabaseHelper extends SQLiteOpenHelper{
private Contextctx = null ;

public DatabaseHelper(Contextcontext,Stringname,CursorFactoryfactory, int version){
super (context,name,factory,version);

}


@Override
public void onCreate(SQLiteDatabasearg0){

}
@Override
public void onUpgrade(SQLiteDatabasearg0, int arg1, int arg2){

}



}
package com.peidw.demo;

import java.util. * ;
import android.app. * ;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.os. * ;
import android.util. * ;

/**
*操作数据库例子
*
@author peidw2009-04-19
*
*/
public class ConnectionProvider{

private static SQLiteDatabasedb = null ;


public ConnectionProvider(Contextctx){
if (db == null ){
Log.v(
" ConnectionProvider " , " ctx= " + ctx.toString());
DatabaseHelperdbHelper
= new DatabaseHelper(ctx, " StudDB " , null , 1 );
db
= dbHelper.getWritableDatabase();
}
}

public SQLiteDatabasegetConnection(){
return db;
}

public void closeConnection(){
db.close();
}
/**
*判断表是否存在
*
@param tablename
*
@return
*/
public boolean isTableExits(Stringtablename){
boolean result = false ; // 表示不存在
Stringstr = " selectcount(*)xcountfromsqlite_masterwheretable=' " + tablename + " ' " ;
Cursorc
= db.rawQuery(str, null );
int xcount = c.getColumnIndex( " xcount " );
if (xcount != 0 ){
result
= true ; // 表存在
}
return result;
}
}

在程序中操作数所的代码片段

ConnectionProvidercp
= new ConnectionProvider( this .getBaseContext());
// if(cp.isTableExits(TABLE_NAME)){ // 表已存在
createTable(cp);
queryTable(cp);
// }else{ // 表不存在
// createTable();
// }



public void createTable(ConnectionProvidercp){


SQLiteDatabasedb
= cp.getConnection();
db.execSQL(
" CREATETABLEIFNOTEXISTS " + TABLE_NAME + " ( "
+ " stud_no " + " TEXT, "
+ " stud_name " + " TEXT "
+ " ); " );

Stringsql_1
= " insertinto " + TABLE_NAME + " (stud_no,stud_name)values('S777','LilyChang'); " ;
Stringsql_2
= " insertinto " + TABLE_NAME + " (stud_no,stud_name)values('S888','LindaLin'); " ;
Stringsql_3
= " insertinto " + TABLE_NAME + " (stud_no,stud_name)values('S999','BruceWang'); " ;
db.execSQL(sql_1);db.execSQL(sql_2);db.execSQL(sql_3);
}
public void queryTable(ConnectionProvidercp){
Stringstr
= " select*from " + TABLE_NAME;
Cursorc
= cp.getConnection().rawQuery(str, null );
Log.v(
" loginactive " , " 查询记录 " );
Log.v(
" loginactive " ,String.valueOf(c.getCount()));
if (c != null ){
c.moveToFirst();
while ( ! c.isLast()){
Log.v(
" loginactive " , " outp. " );
Stringstud_no
= c.getString( 0 );
Stringstud_name
= c.getString( 1 );
System.out.println(stud_no
+ " --------------- " + stud_name);
Log.v(
" loginactive " ,stud_no + " --------------- " + stud_name);
c.moveToNext();
}
}

}
麻烦帮单击一次广告了 !!!

更多相关文章

  1. 【Android】Android 彩信发送的两种方式+源代码
  2. android中使用SQLite进行CRUD操作的实例
  3. Android网络操作
  4. Android发送短信功能代码
  5. MVP -----个人理解与示例(android例子 实现)
  6. [置顶] Android源代码下载
  7. Android 代码混淆 选项说明
  8. 反抗金山毒霸的代码

随机推荐

  1. Android的四种基本布局
  2. 由Android(安卓)65K方法数限制引发的思考
  3. Android studio 打不开官方虚拟机 100%成
  4. Android中 ScrollView(ListView)中嵌套List
  5. Android之toolbar的使用
  6. Android线程池
  7. Android学习-RecyclerView默认scrollbar
  8. 输入法软键盘搜索执行两次的解决方法
  9. Android(安卓)系统入门
  10. Arcgis android 10.2安装方法