Android studio java 使用sqllite 数据库 并本地查看

1.创建 UserDb    进行sqlLite 连接 创建表 增删改查  进行数据处理 

package com.suntae.forklift;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

import java.util.ArrayList;
import java.util.List;

//sqlLite 连接 数据处理
public class UserDB extends SQLiteOpenHelper {
    private static final String Db_name = "user.db";
    private static final int ver = 1;
    private static UserDB mhelp = null;
    private static SQLiteDatabase mrdb = null;
    private static SQLiteDatabase mwdb = null;


    public UserDB(Context context) {
        super(context, Db_name, null, ver);
    }

    //    数据库连接
    public static UserDB getInstance(Context context) {
        if (mhelp == null) {
            mhelp = new UserDB(context);
        }
        return mhelp;
    }

    //打开读连接
    public SQLiteDatabase openReadLink() {
        mwdb = mhelp.getReadableDatabase();
        return mwdb;

    }

    //打开写连接
    public SQLiteDatabase openWriteLink() {
        mrdb = mhelp.getWritableDatabase();
        return mrdb;
    }

    //关闭
    @Override
    public void close() {
        if (mrdb != null && mrdb.isOpen()) {
            mrdb.close();
            mrdb = null;
        }
        if (mwdb != null && mwdb.isOpen()) {
            mwdb.close();
            mwdb = null;
        }
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        String sql = "create table if not exists " + Table_name + " (_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,can_id VARCHAR,can_data VARCHAR ,time VARCHAR,tcp_ip VARCHAR)";
        sqLiteDatabase.execSQL(sql);


    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }


    public long del(String account) {
        //删除所有
//        mwdb.delete(Table_name, "1=1", null);
        //多条件删除
//        mwdb.delete(Table_name, "name=? and age=?", new String[]{name, age});
        return mwdb.delete(Table_name, "account=?", new String[]{account});


    }

    public static long update(User user) {
       ContentValues contentValues = new ContentValues();
        contentValues.put("account", user.account);
        contentValues.put("pass", user.pass);
       contentValues.put("tbox_ip", user.tbox_ip);
        contentValues.put("tcp_ip", user.tcp_ip);
        contentValues.put("vin", user.vin);
        contentValues.put("ting", user.ting);
        contentValues.put("lock", user.lock);
       contentValues.put("start_broadcast", user.start_broadcast);
       contentValues.put("arrive_broadcast", user.arrive_broadcast);
        contentValues.put("con_broadcast", user.con_broadcast);
       contentValues.put("MusicPath", user.MusicPath);
        contentValues.put("download_ip", user.download_ip);
          contentValues.put("dian", user.dian);
        contentValues.put("shui", user.shui);
       return mwdb.update(Table_name, contentValues, "account=?", new String[]{user.account});
    }

    public long insert(User user) {
        ContentValues contentValues = new ContentValues();
        contentValues.put("account", user.account);
        contentValues.put("pass", user.pass);
        contentValues.put("tbox_ip", user.tbox_ip);
        contentValues.put("tcp_ip", user.tcp_ip);
        contentValues.put("vin", user.vin);
        contentValues.put("ting", user.ting);
      contentValues.put("lock", user.lock);
        contentValues.put("start_broadcast", user.start_broadcast);
       contentValues.put("arrive_broadcast", user.arrive_broadcast);
       contentValues.put("con_broadcast", user.con_broadcast);
       contentValues.put("MusicPath", user.MusicPath);
        contentValues.put("download_ip", user.download_ip);
      contentValues.put("dian", user.dian);
        contentValues.put("shui", user.shui);
       return mwdb.insert(Table_name, null, contentValues);
  mwdb.insert(Ta)
   }

    public long insert(String can_id, String can_data,String time) {
        ContentValues contentValues = new ContentValues();
        contentValues.put("can_id", can_id);
        contentValues.put("can_data", can_data);
        contentValues.put("time", time);
        return mwdb.insert(Table_name, null, contentValues);
    }


//    // 开启事务
//    public int shiwu(User user) {
//        ContentValues contentValues = new ContentValues();
//        contentValues.put("account", user.account);
//        contentValues.put("pass", user.pass);
//        try {
//            mwdb.beginTransaction();
//            mwdb.insert(Table_name, null, contentValues);
//            mwdb.insert(Table_name, null, contentValues);
//            mwdb.setTransactionSuccessful();
//        } catch (Exception e) {
//            e.printStackTrace();
//        } finally {
//            mwdb.endTransaction();
//        }
//        return 1;
//    }
}

2.在 MainActivity 进行调用

   private UserDB userDB;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        userDB = userDB.getInstance(this);
        userDB.openWriteLink();
        userDB.openReadLink();
//      userDB.update();
//      userDB.insert();
}

3.查看 表里面的数据 

1.利用AS的App Inspection查看

  • sqlite数据不处于closed状态
  • 程序必须处于运行状态
  • 正确选择了对应的设备和包名
  • 项目必须出去启动状态★★★★★

2.AS插件SimpleSqliteBrower查看

1.下载SimpleSqliteBrower插件

2.点击AS右侧边栏Device File Exploer

3.按照"data/data/应用包名/database/数据库名"找到对应的数据库,双击两下查看

 

 

如果还是不会查看 请参考更详细的文章 

https://blog.csdn.net/qq_49511057/article/details/128690910

  • 12
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值