当前位置:数据库 > SQLite >>

Android应用之个人应用软件开发(3)【SQLite数据库及理财功能实现】

Android给我们提供Sqlite这种轻量级数据库,并提供了一些数据操作访问的类库.如:SQLiteOpenHelper 主要是处理打开、创建、更新等方法的类库。

  有onCreate() onOpen() onUpgarde(db,int ,int) 等方法,还有几个重要的和常用的类也要说一下,就是SqliteDataBase,提供操作SQLite的增、查、删、改等基本方法。还有就是ContentValues ,用来维持当前已打开的数据库的相关数据,当然也提供了增、查、删、改,只不过是在当前数据中。那么先实现创建,和提供的一些自定义的接口,方便我们以后使用,引用方便。

 一些数据字段的都放在这个接口中:

publicinterfacePublicDataCost {
    //定义数据库名称
    String DATABASE_NAME = "ZisouBaseDate";
    intDATABASE_VERSION = 1;
   
    //路径地址
    String DB_PATH =
        "/data/data/Zisou.Soft.mini/databases";
    String PATH = "/databases";
    String DB_NAME = "zisoubasedate.db";
   
    //定义共享优先数据及基础字段
    String MY_RMBCost ="MY_RMBCost";
    String TodayTime ="TodayTime";

    //Sqlite数据库基础字段
    //公有字段
    String ID = "id";
    //TodaySpend表结构
    String Tb_Name_1 = "TodaySpend";                      
    String Field_1_1 = "Morning";    
    String Field_1_2 = "Noon";        
    String Field_1_3 = "Night";     
    String Field_1_4 = "OtherSpend";
    String Field_1_5 = "DailySpend";
    String Field_1_6 = "DateTimes";
}

importandroid.content.Context;
importandroid.database.sqlite.SQLiteDatabase;
importandroid.database.sqlite.SQLiteOpenHelper;
importandroid.view.View.OnClickListener;
publicclassSqliteCommen extendsSQLiteOpenHelper {

    //定义增,改,删,清除字段
    OnClickListener dbl_add = null;
    OnClickListener dbl_update = null;
    OnClickListener dbl_delete = null;

    publicSqliteCommen(Context context) {
        super(context, PublicDataCost.DATABASE_NAME, null, PublicDataCost.DATABASE_VERSION);
        // TODO Auto-generated constructor stub
    }
   
    @Override
    publicvoidonCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
        String sql = "CREATE TABLE " + PublicDataCost.Tb_Name_1 + " ("
        + PublicDataCost.ID  + " INTEGER primary key autoincrement, "
        + PublicDataCost.Field_1_1 + " text not null, "
        + PublicDataCost.Field_1_2 + " text not null, "
        + PublicDataCost.Field_1_3 + " text not null, "
        + PublicDataCost.Field_1_4 + " text not null, "
        + PublicDataCost.Field_1_5 + " text not null, "
        + PublicDataCost.Field_1_6 + " text not null "
        + ");";
        db.execSQL(sql);
    }
    @Override
    publicvoidonUpgrade(SQLiteDatabase db, intoldVersion, intnewVersion) {
        // TODO Auto-generated method stub
       
    }
}

写好简单的基本的数据库的基本方法,在的程序中也要使用到一些必不可少的方法,那可以通用写在Commen类里面。

    SqliteCommen sqlc;

    privatebooleanaddflag = false;

    privateintspinnerid;
    sqlc =  new SqliteCommen(this);
    SQLiteDatabase db = sqlc.getReadableDatabase();

将dbl_add的监听事件注册,在这里需要考虑什么时候需要添加,什么时候需要修改,那就需要两个条件,一个就是标识,和修改的ID值,当通过Sprinner下拉表传递过来的值将其绑定绑定在EeitView控件上,然后标识Button.setText()值为“修改”。addflag = true 来判断修改和删除。

        sqlc.dbl_add = newOnClickListener() {

            publicvoidonClick(View v) {
              if(addflag == false)
              {
                 //添加
                 Cursor c = db.query(PublicDataCost.Tb_Name_1, AllFeild, "DateTimes='" + str + "'", null, null, null, null);
                 if(c.getCount()>0)
                 {
                    Toast.makeText( todayspend.this, "今天已经添加账单,你可以修改今日账单!", Toast.LENGTH_SHORT).show();
                 }
                 else
                 {
                     ContentValues cv = newContentValues();
                     cv.put( PublicDataCost.Field_1_1 , tv_Morning.getText().toString());
                     cv.put( PublicDataCost.Field_1_2 , tv_noon.getText().toString());
                     cv.put( PublicDataCost.Field_1_3 , tv_Night.getText().toString());
                     cv.put( PublicDataCost.Field_1_4 , tv_OtherSpend.getText().toString());
             &

补充:移动开发 , Android ,
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,