Android数据库建库建表的几种方法

方法一: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>

 

 

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白学习之路&&&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值