android数据库原始写法

安卓微信本地数据库解密 安卓微信数据库解密 阅读详情

PersonDBOpenHelper.java

package com.demo.introductiontothedb;

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


/**
 * 1 .写一个类 继承 SQLiteOpenHelper 帮助创建数据库 版本的控制
 * @author Administrator
 *
 */
public class PersonDBOpenHelper extends SQLiteOpenHelper {

	
	/**
	 * 数据库创建帮助类的构造方法 
	 * @param context
	 */
	public PersonDBOpenHelper(Context context) {
		//name 数据库文件的名称
		//factory 访问数据库一个数据库的游标工厂
		// version 数据库的版本
		super(context, "person.db", null, 1);
	}
	/**
	 * 当数据库第一次被创建的是 调用的方法.
	 * 适合做数据库表结构的初始化
	 */
	@Override
	public void onCreate(SQLiteDatabase db) {
		db.execSQL("create table personInfo (id integer primary key autoincrement, name varchar(20), phone varchar(20),address varchar(50)) ");
	}

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

	}

}
PersonDao.java

package com.demo.introductiontothedb.dao;

import com.demo.introductiontothedb.PersonDBOpenHelper;

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


public class PersonDao {
	//增删改查
	//javaweb 1.加载jdbc驱动.连接 2.准备sql 3.查询
	
	private PersonDBOpenHelper helper;

	//任何人使用 dao 都要传递一个上下文
	public PersonDao(Context context) {
		helper = new PersonDBOpenHelper(context);
	}
	/**
	 * 添加一条记录
	 */
	public void add(String name,String phone,String addresss){
		SQLiteDatabase db = helper.getWritableDatabase();
		db.execSQL("insert into personInfo (name,phone,address) values (?,?,?)", new Object[]{name,phone,addresss});
		db.close();
	}
	

	
	/**
	 * 根据名字查找一条记录
	 */
	public int find(String name){
		int id = -1;
		SQLiteDatabase db = helper.getReadableDatabase();
		Cursor cursor = db.rawQuery("select id from personInfo where name=?", new String[]{name});
		if(cursor.moveToFirst()){
			id = cursor.getInt(0);
		}
		cursor.close();
		db.close();
		return id;
	}
	
	/**
	 * 删除一条记录
	 */
	public void delete(int id){
		SQLiteDatabase db = helper.getWritableDatabase();
		db.execSQL("delete from personInfo where id=?", new Object[]{id});
		db.close();
	}
	
	/**
	 * 更改一条记录
	 */
	public void update(String name,String phone,int id){
		SQLiteDatabase db = helper.getWritableDatabase();
		db.execSQL("update personInfo set name=?,phone=? where id=?", new Object[]{name,phone,id});
		db.close();
	}
	

	
}

TestPerson.java

package com.demo.introductiontothedb.test;

import com.demo.introductiontothedb.dao.PersonDao;
import android.test.AndroidTestCase;

public class TestPerson extends AndroidTestCase {
	private PersonDao dao;
	@Override
	protected void setUp() throws Exception {
		dao = new PersonDao(getContext());
		super.setUp();
	}
	
	public void testAdd(){
		dao.add("AV", "123", "岛国");
	}
	
	public void testDelete(){
		int id = dao.find("刘亦菲");
		dao.delete(id);
	}

	public void testUpdate(){
		dao.update("麻生希", "545565", 8);
	}	
}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.demo.introductiontothedb"
    android:versionCode="1"
    android:versionName="1.0" >

    <instrumentation
        android:name="android.test.InstrumentationTestRunner"
        android:label="Tests for My App"
        android:targetPackage="com.demo.introductiontothedb" />

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <!-- 在application节点下添加 使用的测试library -->
        <uses-library android:name="android.test.runner" />

        <activity
            android:name="com.demo.introductiontothedb.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>



Android数据库:SQLite除了.db文件,还多出.db-shm,.db-wal文件 Android数据库:SQLite除了.db文件,还多出.db-shm,.db-wal文件 使用安卓数据库保存文件时,在Android Studio 的 Device File Explorer里数据库文件目录 /data/data/com.urovo.datatopc/databases/DATA.db 发现其目录下不仅有.db文件,还有两个其他文件 .db-shm和.db-wal文件 而且数据库存储文件DATA.db(这是我的数据库名字,你们的可能不一样)保存至本地,通过SQLite Develope 阅读详情

相关推荐

Android Studio 使用插件Database Navigation 连接 sqlite数据库

Database Navigation 是一款在 Android Studio 开发环境中非常实用的插件,它主要致力于帮助开发者更便捷、高效地管理和操作数据库,尤其是在 Android 项目涉及到数据库相关开发工作时,能够提升开发体验与效率。

梁辰兴的博客 2556

android写数据库,android数据库原始写法

PersonDBOpenHelper.javapackage com.demo.introductiontothedb;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;/*** 1 .写一个类 继承...

weixin_35718537的博客 263

关于unity安卓平台对数据库文件的读取

这是针对关于安卓平台对项目数据库文件的访问 刚来公司实习不久,开始了一个小项目demo,本来是用csv文件读取一些数据,然而老板开始要求用数据库来读取,因此我就简单的直接读取本机的数据库,在PC上运行没有问题。老板开始要求在安卓上运行,此时问题就出现了,安卓上是无法通过ip去访问数据库。其实可以通过访问网站来获取数据库的数据,但是对于我这种刚毕业的新手来说是无法实现的,只能妥协通过访问数据库导出来...

日尧的博客 2352

android mysql代码_Android的数据库的写法(基础篇)

首先写一个helper继承SQLiteOpenHelperprivateSQLiteDatabasedb_r=null;//readabledatabaseprivateSQLiteDatabasedb_w=null;//writabledatabaseprivatestaticDbHelperdbHelper;privateDbHelper(Contextc...

weixin_39716971的博客 227

Android动态破解微信本地数据库(EnMicroMsg.db)

最近在公司接了一个任务,需要在几百台手机上安装一个app,目的是获取微信里面的通讯录,并且定时的把他发送到我们的服务器上。当时依次尝试的如下几个方案:   1.通过群控,将好友截图发送到服务端(python),利用python的图像识别库来获取好友的信息。   2.开发一个app,使用android自带AccessibilityService,模拟用户操作微信,然后获取屏幕中的内容。

六桥风月IT随笔 9009

android 读取本地数据库db文件(Android sqlite),初面蚂蚁金服

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

m0_57077948的博客 1395

Android开发 SQLite数据库

SQLite数据库是一种用于手机app的轻量型数据库; Android系统封装了一个类:SqliteOpenHelper(它是抽象类)是主要用来使用的SQLite的。 但实际使用SQLite数据有更加方便与便捷的方法:Room三角色 创建数据库 Activity_main.java Activity_main.xml MySQLiteOpenHelper.java Activity_main.java package com.example.sqlite; import androidx.appcom

GAOK11的博客 3610

安卓db数据库查看工具——快速管理与分析SQLite数据库

SQLite 是 Android 内置的轻量级关系型数据库管理系统,为 Android 应用提供了一种高效、便捷的数据持久化方案。与传统的关系型数据库不同,SQLite 将数据库存储在文件系统中的单一文件内,从而简化了数据库的部署和管理。SQLite 支持标准的 SQL 语言,允许在没有服务器进程的情况下进行数据库操作,这使得它非常适合于资源有限的移动设备环境。在 Android 应用开发中,SQLite 数据库常用于本地数据存储、用户个性化设置记录以及应用内缓存。

weixin_32869687的博客 1943

五一加班也要看的Android数据库开发基础入门【附完整案例】

目录 一、初识Android数据库 二、表中数据的添加操作 三、数据表中数据的删除 1、删除数据表中的全部数据 2、单条数据的删除 四、数据表中单条数据指定值的修改 五、数据表中数据的查找 1、查找全部数据 2、查询单条数据 六、完整项目案例源码 Hello,你好呀,我是灰小猿!一个超会写bug的程序猿! 最近和大家分享了很多关于Python开发的相关文章,今天就换个口味,在这里和大家记录一下在Android开发中连接数据库并进行基本操作的相关内容。 Android中的数据库使用和

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 4106

STC8H8K64U ADC采样实战:从蜂鸣器控制到电压测量(附完整代码)

本文以STC8H8K64U单片机为核心,通过两个实战案例详细讲解ADC采样的应用。首先介绍如何利用ADC采样值动态控制蜂鸣器响度,实现模拟PWM效果;其次深入探讨高精度外部电压测量的方法,包括硬件连接、两点校准技巧以及软件滤波,旨在帮助开发者从理论到实践全面掌握ADC功能。

weixin_29159441的博客 562

MyEclipse 2017 CI 10安装与激活

本文介绍MyEclipse 2017 CI 7、CI 8、CI 9和CI 10的安装与激活。此方法理论上应该能激活MyEclipse 2017 CI所有系列,即激活方法是通用的,只是激活文件略有不同。本文提供MyEclipse 2017 CI 7、CI 8、CI 9和CI 10的激活文件。说明:博主所提供的压缩包格式均为RAR5,即WinRAR 5.0以上的版本才能正常解压,别的压缩软件博主不太清...

weixin_42539046的博客 9416

Android开发之创建数据库

在Android中创建数据库流程 * 1、创建一个类,继承SQLiteOpenHelper * 2、重写方法和创建构造方法 * 3、创建子类对象,再调用getReadableDatabase()/getWriteableDatabase()方法,即可创建数据库 创建一个空的数据库 创建类,并继承SQLiteOpenHelper package com.example.databasedemo; import android.content.Context; import android.data

qq_43623013的博客 6861

Unity通用Buff系统,Buff编辑器(1,理论篇)(技能系统之Buff篇)

逻辑层根据游戏的规则和设计,控制Buff的生命周期、影响目标对象的属性或行为,以及处理Buff的交互和冲突。Buff堆叠和冲突:有些游戏中允许同类型的Buff叠加,以增加效果的强度,而有些游戏中可能不允许Buff叠加,只能由更强力的Buff来覆盖较弱的Buff。灵活个性化:每个游戏对象拥有自己的BuffManager,可以实现个体对象的独特Buff效果,增加游戏的多样性和个性化。自由控制:每个对象独立管理自己的Buff,可以自由地激活、更新和移除Buff效果,提供更精细的控制和逻辑实现。

u010082265的博客 4695

查看安卓sqlite数据库工具:Android-Debug-Database

简要介绍 安卓开发过程中,有时需要查看sqlite数据库,核对数据.本文介绍Android-Debug-Database,非常好用. github地址:https://github.com/amitshekhariitbhu/Android-Debug-Database 功能: 支持查看手机该app的数据库和shared preference. 支持修改数据库和shared preferenc...

蓝不蓝编程 1524

KEGG两类报错--①No gene can be mapped--②URL ‘https://rest.kegg.jp/link/hsa/pathway‘…

版本问题,重新安装一下clusterProfiler包。网络问题,可以等待之后再试一下(试过不是)(以上可以排除基因不存在的错误因素)

weixin_57699783的博客 2万+

VBA一键汇总多个工作簿-名称相同的工作表-的指定区域数据

VBA一键汇总多个工作簿-名称相同的工作表-的指定区域数据 日常工作,我们经常需要汇总相同格式的工作簿的某个工作表的数据 如1月业绩、2月业绩。。。。12月业绩等 姓名 数量 数据22 22 数据23 23 数据24 24 数据25 25 数据26 26 数据27 27 数据28 28 数据29 29 数据30 30 数据31 31 数据32 32 数据33 33 数据34

陈表达的博客 5982

Android Studio | 使用Database Inspector 查看数据库 .db 文件,太方便了!

在涉及到数据库开发时,通常需要查看 SQLite 数据库文件(.db),以调试数据存储是否正确。然而,由于Android 设备的 数据隔离机制,普通应用无法直接访问目录下的数据库文件。除了将数据库文件导出然后利用三方工具操作外,Android Studio 本身也提供了 Database Inspector 工具,可以直接在 IDE 中可视化地查看和修改数据库内容,无需导出文件,非常方便!

小马快跑的博客 2144

SAP-ABAP:SAP ABAP 深度解析:BAPI 从入门到精通 —— 原理、实战与自定义开发全指南

SAP ABAP BAPI 深度解析摘要 本文全面介绍了 SAP ABAP 中的 BAPI(业务应用程序编程接口)技术,涵盖以下核心内容: BAPI 定义与特点:BAPI 是 SAP 为业务对象提供的标准化编程接口,具有面向对象、封装业务逻辑、标准化错误处理和版本兼容性等特点。 BAPI 与 RFC 关系:所有 BAPI 都是 RFC,但需额外满足业务对象注册、标准化参数和错误处理等要求。 BAPI 核心作用:包括业务逻辑封装、系统集成、标准化错误处理、版本兼容和审计合规。 实战演示:通过创建销售订单的完整

baidu_35680696的博客 1033

Android访问外部DB文件

注:本文代码参考了网上的例子,忘了什么地址了,所以无法提供说明,原作者看到勿怪,可以提醒我加上。   有时候自己导入DB文件进行操作,和访问本地数据库有点差异。 首先在res下建立一个文件夹raw,然后把DB文件导入进去 然后写一个方法获取SQLiteDatabase private static SQLiteDatabase database; public static final

氵白的专栏 1万+

Flask基础项目:从零到一搭建用户管理系统

本文介绍了一个基于Flask的用户管理系统,具有完整的增删改查功能。系统采用SQLAlchemy ORM进行数据库操作,自动处理SQL注入并首次运行时创建表结构。主要特点包括:实时统计用户总数和平均年龄、智能即时搜索、前后端双重数据验证、邮箱唯一性检查、流畅动画效果和响应式设计。后端使用Flask框架实现RESTful API,前端采用现代化UI设计,支持异步操作不阻塞界面。系统安装简单,只需创建数据库并安装依赖即可运行,适合作为基础用户管理系统的参考实现。

数据知道的博客 3837

Microsoft Forms功能深度解析:企业数据收集与协作的智能利器

Microsoft Forms是微软365生态中的在线表单工具,支持问卷调查、测验和投票创建,具备拖拽式界面、多题型设计和实时数据分析功能。其核心价值在于易用性、跨平台兼容性以及与Teams、SharePoint等微软服务的深度集成,满足GDPR/HIPAA等合规要求。提供表单创建、权限管理、自动化流程(通过Power Automate)和审计日志等功能,适用于金融、医疗、教育等多行业场景。虽然存在逻辑分支有限等约束,但通过案例证明能显著提升数据收集效率(达70-85%)。使用时需注意许可证配置(Busin

xueyunshengling的博客 9125

Android 数据库加密 android-database-sqlcipher 开源版本编译过程

build android-database-sqlcipher 介绍 android-database-sqlcipher 用于 Android SQLite 数据库的加密。 维护者提供了 收费 和 开源 两个版本。 sqlcipher开发维护者官网:https://www.zetetic.net/sqlcipher/ github开源项目地址:android-database-sqlciph...

103style 6621

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

android studio使用database navigator查看数据库

一  database navigator database navigator是android studio的一个插件,可以用来查看sqlite数据库,也可以查看MySQL等其他数据库。 二  安装插件 1、file -> setting 2、搜索并安装插件 3、安装完成后会提示重启android studio,重启后,右侧出现DB Browser,至此安装完成。

乌龟赛跑 4万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Android 数据库db 文件解析

sqlite>.mode column 默认为list,设置为column,其他模式可通过.help查看mode相关内。sqlite>.database 查看数据库文件信息命令(注意命令前带字符’.')2、用终端切换到数据库的路径下,命令 cd /Users/xxxxxxx。3、输入 sqlcipher xxxxx.db ,按Enter键继续。

GeniusIOTboy的博客 1635

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Android 使用外部db数据库文件

先简单说下步骤: 将格式为.db的数据库文件放到android项目assets目录中; 在程序必要的时候,将其“拷贝”(文件读取)到Android 程序默认的数据库存储目录中,一般路径为“/data/data/项目包名/databases/“; 自定义SQLiteOpenHelper类,创建一个名字跟步骤1中.db名称一样的数据库; 按照平常逻辑,增删改查数据库。下面做下详细讲解: 步骤1:如下图,

AlanBoon希望能够帮助到你! 1万+

Android 联系人数据库contacts2.db介绍

参考: http://blog.youkuaiyun.com/flying_vip_521/article/details/7258805 https://my.oschina.net/gabriel1215/blog/492051 项目描述:该项目为基于Android平台的手机通讯录,主要模块分为四个部分:联系人管理模块,通话记录管理模块

luffy的专栏 7465
上一篇: android数据库的另一种写法
下一篇: android封装好的方法写增删改查
Timesongs
博客等级 码龄14年 15粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值