Android--数据库创建

 新建帮助类

 创建一个类并继承SQLiteOpenHelper

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.Toast;

public class MyHelper extends SQLiteOpenHelper {

<span class="hljs-keyword">public <span class="hljs-keyword">static <span class="hljs-keyword">final String CREATE_TABLE=<span class="hljs-string">"create table Book("+
        <span class="hljs-string">"_id integer primary key autoincrement,"+
        <span class="hljs-string">"bname text,"+
        <span class="hljs-string">"bprice real,"+
        <span class="hljs-string">"bbanci varchar(10),"+
        <span class="hljs-string">"bleibie varchar(20),"+
        <span class="hljs-string">"bcbs varchar(50))";

<span class="hljs-keyword">private Context mContext;

<span class="hljs-keyword">public <span class="hljs-title function_">MyHelper<span class="hljs-params">(Context context,  String name, SQLiteDatabase.CursorFactory factory, <span class="hljs-type">int version) {
    <span class="hljs-built_in">super(context, name, factory, version);

    mContext = context;

}

<span class="hljs-meta">@Override
<span class="hljs-keyword">public <span class="hljs-keyword">void <span class="hljs-title function_">onCreate<span class="hljs-params">(SQLiteDatabase db) {
    <span class="hljs-comment">//调用SQLiteDatabase中的execSQL()执行建表语句。
    db.execSQL(CREATE_TABLE);
    <span class="hljs-comment">//创建成功

// Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();

}

<span class="hljs-meta">@Override
<span class="hljs-keyword">public <span class="hljs-keyword">void <span class="hljs-title function_">onUpgrade<span class="hljs-params">(SQLiteDatabase db, <span class="hljs-type">int i, <span class="hljs-type">int i1) {
    db.execSQL(<span class="hljs-string">"drop table if exists Book");
    onCreate(db);
}

}


创建数据库

创建帮助类对象

MyHelper(上下文对象,"数据库名称.db",factory,版本号)

[注]:只有在第一次创建(调用.getWritableDatabase()方法)这个数据库才会调用onCreate方法

若要再次调用onCreate方法,可通过onUpgrade调用

若要调用onUpgrade方法,

         myHelper = new MyHelper(this,"BookStore.db",null,版本号);

        版本号的值修改为比之前设置的数值大就行

public class ManageActivity extends AppCompatActivity {
    MyHelper myHelper;
    SQLiteDatabase sdb;
<span class="hljs-meta">@Override
<span class="hljs-keyword">protected <span class="hljs-keyword">void <span class="hljs-title function_">onCreate<span class="hljs-params">(Bundle savedInstanceState) {
    <span class="hljs-built_in">super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_manage);

    <span class="hljs-comment">//创建帮助类对象
    myHelper = <span class="hljs-keyword">new <span class="hljs-title class_">MyHelper(<span class="hljs-built_in">this,<span class="hljs-string">"BookStore.db",<span class="hljs-literal">null,<span class="hljs-number">1);
    sdb = myHelper.getWritableDatabase();

    Toast.makeText(ManageActivity.<span class="hljs-built_in">this, <span class="hljs-string">"数据库创建成功", Toast.LENGTH_SHORT).show();
}

}


 

 


posted @ 2022-06-07 14:37  ML_star  阅读(103)  评论(0)    收藏  举报