国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android編程之數據庫的創建方法詳解

2019-10-22 18:29:19
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程之數據庫的創建方法。分享給大家供大家參考,具體如下:

主java

package com.itheima.createdatabase;import android.app.Activity;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;public class MainActivity extends Activity {  private Context mContext;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    mContext = this;    //創建一個幫助類對象    MySqliteOpenHelper mySqliteOpenHelper = new MySqliteOpenHelper(mContext);    //調用getReadableDatabase方法,來初始化數據庫的創建    SQLiteDatabase db = mySqliteOpenHelper.getReadableDatabase();  }}

同一目錄下創建一個類繼承于數據庫

package com.itheima.createdatabase;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;public class MySqliteOpenHelper extends SQLiteOpenHelper {  public MySqliteOpenHelper(Context context) {    //context :上下文  , name:數據庫文件的名稱  factory:用來創建cursor對象,默認為null    //version:數據庫的版本號,從1開始,如果發生改變,onUpgrade方法將會調用,4.0之后只能升不能將    super(context, "info.db", null,1);  }  //oncreate方法是數據庫第一次創建的時候會被調用; 特別適合做表結構的初始化,需要執行sql語句;SQLiteDatabase db可以用來執行sql語句  @Override  public void onCreate(SQLiteDatabase db) {    //通過SQLiteDatabase執行一個創建表的sql語句    db.execSQL("create table info (_id integer primary key autoincrement,name varchar(20))");  }  //onUpgrade數據庫版本號發生改變時才會執行; 特別適合做表結構的修改  @Override  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    //添加一個phone字段    db.execSQL("alter table info add phone varchar(11)");  }}

筆記:

什么情況下我們才用數據庫做數據存儲? 大量數據結構相同的數據需要存儲時。

mysql sqlserver2000  sqlite 嵌入式 輕量級

SqliteOpenHelper

創建數據庫步驟:

1.創建一個類繼承SqliteOpenHelper,需要添加一個構造方法,實現兩個方法oncreate ,onupgrade

構造方法中的參數介紹:

context :上下文   , name:數據庫文件的名稱    factory:用來創建cursor對象,默認為null

version:數據庫的版本號,從1開始,如果發生改變,onUpgrade方法將會調用,4.0之后只能升不能降

super(context, "info.db", null,1);

2.創建這個幫助類的一個對象,調用getReadableDatabase()方法,會幫助我們創建打開一個數據庫

3.復寫oncreateonupgrdate方法:

oncreate方法是數據庫第一次創建的時候會被調用;  特別適合做表結構的初始化,需要執行sql語句;SQLiteDatabase db可以用來執行sql語句

onUpgrade數據庫版本號發生改變時才會執行; 特別適合做表結構的修改

幫助類對象中的getWritableDatabase 和 getReadableDatabase都可以幫助我們獲取一個數據庫操作對象SqliteDatabase.

區別:

getReadableDatabase:

先嘗試以讀寫方式打開數據庫,如果磁盤空間滿了,他會重新嘗試以只讀方式打開數據庫。

getWritableDatabase:

直接以讀寫方式打開數據庫,如果磁盤空間滿了,就直接報錯。

希望本文所述對大家Android程序設計有所幫助。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双城市| 许昌县| 上饶市| 霍城县| 开阳县| 海伦市| 湖南省| 连州市| 新野县| 即墨市| 沅陵县| 襄樊市| 江陵县| 金堂县| 渝北区| 文水县| 阜新| 大理市| 伽师县| 门源| 嘉鱼县| 垣曲县| 宜城市| 日喀则市| 开封市| 大方县| 霍城县| 锡林郭勒盟| 大渡口区| 双柏县| 灵寿县| 大港区| 通州区| 新和县| 松潘县| 和龙市| 三门县| 河源市| 酉阳| 新沂市| 三穗县|