SQlite3 数据库初步建立(1)

来源:互联网 发布:手机淘宝怎么删评价 编辑:程序博客网 时间:2024/06/15 19:31

工具:Android Stduio

在开发手机应用中,一般会通过代码创建数据库,没有数据库的话就会自动生成一个数据库。

在安卓中提供了一个数据库辅助类SQLiteOpenHelper在该类的构造器中,调用Context中方法创建并打开一个指定名称的数据库,我们在应用这个类时,需要编写继承自SQLiteOpenHelper类的子类,并且重写onCreate()和onUpgrade()方法。

下面是一个例子。

package com.example.administrator.loginf;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.content.*;/** * Created by Administrator on 2017/10/10/010. */public class DBOpenHelper extends SQLiteOpenHelper{    private static final int VERSION =1;                        //定义数据库版本号    private static final String DBNAME ="account.db";           //定义数据库名    public DBOpenHelper(Context context)                            //定义构造器    {        super(context,DBNAME,null,VERSION);                        //重写基类的构造函数    }    @Override    public void onCreate(SQLiteDatabase dq) {                        //创建数据库        //创建支出信息表        dq.execSQL("create table tb_outaccount(_id integer primary key,"+"money decimal,time varchar(20),"+"type varchar(10),address varchar(100),mark varchar(200)");       //创建收入信息表        dq.execSQL("create table tb_inaccount(_id integer primary key,"+"money decimal,time varchar(10),"+"type varchar(20),handler varchar(100),mark varcahr(200)");        dq.execSQL("create table tb_pwd(password varchar(20))");   //创建密码表        dq.execSQL("create table tb_flag(_id integer primary key,"+"flag varchar(200))");  //创建便签信息表    }    @Override    public void onUpgrade(SQLiteDatabase dq, int oldVersion, int newVersion) {    }}
期间发现了一个问题就是Content这里显红
 public DBOpenHelper(Context context)                            //定义构造器    {        super(context,DBNAME,null,VERSION);                        //重写基类的构造函数    }
如果显红的话意思就是没有导入这个包,所以我们需要导入这个包

import android.content.*;
即可

打开默认创建的MainActivity,在重写的onCreate方法中,首先创建并初始化步骤(1)创建的DBOpenHelper类对象,然后调用getWritableDatabase()方法初始化SQLiteDatabase对象

import android.database.sqlite.SQLiteDatabase;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        DBOpenHelper helper=new DBOpenHelper(this);        SQLiteDatabase dq = helper.getWritableDatabase();    }



阅读全文
0 0
原创粉丝点击