工具: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();
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/134174.html