成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

怎么在Android中對SQLite數(shù)據(jù)庫進行數(shù)據(jù)持久化

怎么在Android中對SQLite數(shù)據(jù)庫進行數(shù)據(jù)持久化?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)建站專注于網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對待客戶,用專業(yè)的服務(wù)創(chuàng)造價值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。

1、SQLiteOpenHelper:創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)庫版本管理的輔助類,該類是一個抽象類,所以我們一般都有一個子類SQLiteOpenHelper,需要繼承實現(xiàn)的方法主要有onCreate()、onUpgrade()、getWritableDatabase()等。getWritableDatabase()方法返回的是SQLiteDatabase對象實例,如果數(shù)據(jù)庫尚未創(chuàng)建,則會自動調(diào)用onCreate()方法來創(chuàng)建數(shù)據(jù)庫,所以一些建表和數(shù)據(jù)初始化操作,應(yīng)該放在onCreate()方法里 。

2、SQLiteDatabase:操作SQLite數(shù)據(jù)庫的類,可以進行SQL語句,對數(shù)據(jù)庫進行增、刪、改、查的操作,該對象已經(jīng)對基本的數(shù)據(jù)庫操作進行了封裝。可以調(diào)用insert()、delete()、executeSQL()等方法,進行實際的數(shù)據(jù)庫操作 ,這個類相當(dāng)于JDBC中的Connection,也類似Hibernate中的Session,或者Spring中的HibernateTemplate;也可以進行transaction的控制。很多對數(shù)據(jù)庫的操作最終都是通過SQLiteDatabase實例來調(diào)用執(zhí)行的。

注意:數(shù)據(jù)庫對于一個應(yīng)用時私有的,并且在一個應(yīng)用當(dāng)中,數(shù)據(jù)庫的名字也是唯一的。

3、Corsor:游標(biāo)。通過Cursor可以對于從數(shù)據(jù)庫中查詢出來的結(jié)果集進行隨機的讀寫訪問。對于數(shù)據(jù)庫的查詢結(jié)果,一般是由子類SQLiteCursor返回的。

特別注意:開發(fā)的時候一般會對前面兩個類做一下包裝,比如進行簡單的封裝,使得SQLiteDatabase的查詢方法不是返回原始的Cursor類(Cursor相當(dāng)于JDBC中的ResultSet),而是返回業(yè)務(wù)對象等等

實現(xiàn)的代碼如下:

SQLiteOpenHelper類的實現(xiàn):

package com.sql;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class DataBaseHelpler extends SQLiteOpenHelper{
  private static final int VERSION = 1;
  public DataBaseHelpler(Context context, String name, CursorFactory factory,
      int version) {
    super(context, name, factory, version);
    // TODO Auto-generated constructor stub
  }
  public DataBaseHelpler(Context context,String name){
    this(context,name,VERSION);
  }
  public DataBaseHelpler(Context context, String name,int version){
    this(context, name, null, version);
  }
  @Override
  public void onCreate(SQLiteDatabase db) {
    // TODO Auto-generated method stub
    System.out.println("creat database");
    db.execSQL("create table student(no int,name verchar(20))");
  }
  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // TODO Auto-generated method stub
    System.out.println("upgrade database");
  }
}

SQLite類的實現(xiàn):

package com.sql;
import android.app.Activity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
  /** Called when the activity is first created. */
  private Button button_create,
          button_upgreate,
          button_insert,
          button_up,
          button_query,
          button_delete;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    button_create = (Button) findViewById(R.id.button1);
    button_upgreate = (Button) findViewById(R.id.button2);
    button_insert = (Button) findViewById(R.id.button3);
    button_up = (Button) findViewById(R.id.button4);
    button_query = (Button) findViewById(R.id.button5);
    button_delete = (Button) findViewById(R.id.button6);
    //創(chuàng)建數(shù)據(jù)庫
    button_create.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        DataBaseHelpler dbh = new DataBaseHelpler(SQLiteActivity.this,"tabel_one");
        SQLiteDatabase sql = dbh.getReadableDatabase();
      }
    });
    //更新數(shù)據(jù)庫
    button_upgreate.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        DataBaseHelpler dbh = new DataBaseHelpler(SQLiteActivity.this,"tabel_one",2);
        SQLiteDatabase sql = dbh.getReadableDatabase();
      }
    });
    //向數(shù)據(jù)庫中的表中插入內(nèi)容
    button_insert.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        ContentValues values = new ContentValues();
        values.put("no", 123);
        values.put("name", "zhangsan");
        DataBaseHelpler dbh = new DataBaseHelpler(SQLiteActivity.this,"tabel_one",2);
        SQLiteDatabase sql = dbh.getReadableDatabase();
        sql.insert("tabel_one", null, values);
      }
    });
    //更新表的內(nèi)容
    button_up.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        DataBaseHelpler dbh = new DataBaseHelpler(SQLiteActivity.this,"tabel_one");
        SQLiteDatabase sql = dbh.getReadableDatabase();
        ContentValues values = new ContentValues();
        values.put("name", "wangwu");
        sql.update("tabel_one", values, "id=?", new String[]{"1"});
      }
    });
    //查找表的內(nèi)容
    button_query.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
      }
    });
    //刪除
    button_delete.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
        // TODO Auto-generated method stub
      }
    });
  }
}

關(guān)于怎么在Android中對SQLite數(shù)據(jù)庫進行數(shù)據(jù)持久化問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。

文章題目:怎么在Android中對SQLite數(shù)據(jù)庫進行數(shù)據(jù)持久化
新聞來源:http://jinyejixie.com/article42/gpschc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google網(wǎng)站設(shè)計公司、商城網(wǎng)站微信公眾號、云服務(wù)器、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
资中县| 洛浦县| 松滋市| 乐至县| 云梦县| 大关县| 长宁县| 贡觉县| 綦江县| 汉寿县| 长沙县| 平乡县| 鄂州市| 建平县| 邢台县| 潮安县| 潮安县| 宽城| 乐至县| 马鞍山市| 那坡县| 平顶山市| 于田县| 连云港市| 凯里市| 合阳县| 垣曲县| 浦江县| 东台市| 万安县| 分宜县| 元阳县| 贵州省| 彰化县| 革吉县| 梓潼县| 临高县| 苏州市| 化德县| 和硕县| 奇台县|