方法一:SQLite数据库的建立
SQLiteDatabase database;
public UserDao(Context context){
//1.1建库
database=context.openOrCreateDatabase("user.db",Context.MODE_PRIVATE,null);
//1.2建表
String sql="create table if not exists usertb(_id integer primary key autoincrement,name text,pass text)";
database.execSQL(sql);
}
以增加数据的操作为例
public boolean insert(String name,String pwd){
//储存数据
ContentValues cv=new ContentValues();
cv.put("name",name);
cv.put("pass",pwd);
long lv=database.insert("usertb",null,cv);
database.close();
if(lv>0) return true;
return false;
}
方法二:基于SQLiteOpenHelper方法对数据库的创建与升级:
先新建一个java类来继承SQLiteOpenHelper
public class DbHelp extends SQLiteOpenHelper {
public DbHelp(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
建库建表:
public class IncomeDao {
DbHelp dbHelp;
SQLiteDatabase db;
final String TBNAME="incometb";
public IncomeDao(Context context){
// db=context.openOrCreateDatabase("income.db",Context.MODE_PRIVATE,null);
dbHelp= new DbHelp(context,"incomd.db",null,1);
db=dbHelp.getWritableDatabase();
String sqltb="create table if not exists "+TBNAME+"(_id integer primary key autoincrement,"+
"type text,count text,date text)";
db.execSQL(sqltb);
db.close();
}
以添加数据操作为例
public boolean insert(Income income){
ContentValues cv=new ContentValues();
cv.put("type",income.getType());
cv.put("count",income.getCount());
cv.put("date",income.getDate());
db=dbHelp.getWritableDatabase();
long lv= db.insert("incometb",null,cv);
db.close();
if (lv>0) return true;
return false;
}
方法三:使用litepal框架
要在项目下导入库
2.新建一个文件
3.在新建的文件中进行配置
<?xml version="1.0" encoding="utf-8" ?>
<litepal>
<!-- 指定数据库的名称 -->
<dbname value="data.db"></dbname>
<version value="1"></version>
<list>
<mapping class="com.example.databaseexp.UserInfo"></mapping>
</list>
</litepal>