小工具知识网

当前位置: 首页 > 行业知识 > Android studio java 使用sqllite 数据库 并本地查看

行业知识

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

2026-10-25 14:26:34 来源:互联网转载

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

上一篇:易语言IP切换攻略,轻松实现方法与步骤

下一篇:怎么建个人网页?