Android SQLite轻量级数据库(简单介绍)
SQLite它是相当于嵌入到安卓里的一个小数据库吧,
它也可以使用SQL语句进行数据库的增删改查操作,但是是SQL1992的语句。
然后SQLite也有自己的语句,但是学过SQL的应该都会发现,它比较鸡肋,
首先冗长代码不说,操作还花里胡哨的。
所以我们就是使用数据库语言通用 的SQL语句写就好了。
今天仍然讲昨天那个,昨天那个是不能注册的,我们今天就把注册信息放到数据库里
然后下次登录的时候就可以查询数据库里有没有,这样就真正实现了注册和登录。
主要介绍的是这个两个:
SqliteDatabase 他是代表数据库的一个对象 通过他就能操作数据库。
SqliteOpenHelper 创建打开数据库需要继承SqliteOpenHelper 。
它有两个方法,可以将数据写入数据库。
getReadableDatabase:一般用这个,可读可写,如果写满了就变只读(建议使用)。
getWritableDatabase:这个是可写,如果写满了就会报错。 他们的返回值是数据库对象,所以可以用数据库对象的变量去储存。
我们先创建跳转到注册界面的活动和布局。

先简答的创建一个注册页面,和活动。
再开始数据库的第一步操作,创建继承SqliteOpenHelper 的类,并重写方法

主要重写两个方法,第一个是创建数据库回调用的,第二个是更新数据库版本用的,
然后记得重写构造方法,不然在注册活动new不出来。
String sql = "create table user(id integer primary key autoincrement,username varchar(20),password varchar(20))";
db.execSQL(sql);
创建里的这两句话,就是使用SQL语句,然后db是SqliteDatabase 类型的变量
然后execSQL就是实现SQL语句。 听学长说更新的方法用不到,本牛崽看书上说其实改个版本号,然后数据表如果有多个,这个就有作用,
但是学长说的我可以理解成(我们只是代码的搬运工,那些数据库的东西我。们基本上拿过来用就行)
然后我们 写注册活动的东西:
其实就是昨天那个插件自动生成的结构,我们只需要改一些然后插入数据库对象和数据库打开助手
因为登录界面和注册界面差不多,所以变量就不变了,搞两个成员变量:数据库对象和数据库打开助手 然后在OnCreate里头开始new我们自己写的继承数据库打开助手的类,它的四个参数,我们已经在自己写的类里固定了三个,第一个数据就是上下文,所以我们只需要传入上下文就好
然后用数据库对象的变量去存储数据库打开助手点出来的可读写方法,相当于把数据通过助手写到数据库里去了。

点击方法就是给那俩个方法监听,返回就是跳转到登录界面,完成注册就是提醒你注册成功。
然后就是因为用插件生成的方法里有submit方法,它是得到用户和密码的方法,我们存入数据库就是点击注册之后,来这个方法里,把用户和密码存进来,我们在注册活动主要是“增”这个操作
主活动登录时是创建一个“查”的操作,以后再搞个修改密码就是“改”,“删”一般谨慎使用,
我们继续主活动里的方法,就也是修改一下submit方法里的,
我们的思路就是,先得到用户和密码,去数据查,如果有就判断密码对不对,如果没有就提示没有呗。

这边主要说说那个“查”的操作:
在submit方法里,我们获得用户名,这边用Cursor就是给它用rawQuaryd方式写SQL语句,
然后用用户名去找到他的所有信息,并且判断拿到密码和输入的密码是不是一样。
最后关闭数据库对象。

上面的截图有点长,因为代码长如果只复制代码,看起来就很乱,这样截图,就很容易看了。
今天的内容就到这了,我可以开开心心的组装我的QQ了,我发现最近学的好像跟扣扣都有联系,哈哈,等我凯旋的消息吧,
其实学长让我们做一个文件管理的东西,但是我不用那东西,感觉挺别扭,还没思路,qq这个东西玩的熟,而且听学长们讲课时,想的例子也都是QQ能搭上线的,
所以我打算自己写个简易版的手机QQ,前面自己是写了个小项目,可那都只是表面的花里胡哨,最近学的才是真材实料,奥利给。
Android SQLite轻量级数据库(简单介绍)的更多相关文章
- Android SQLite轻量级数据库的删除和查找操作
今天主要是补充昨天的内容,本打算合成一章的,但是毕竟一天一天的内容写习惯了. 就这样继续昨天的,昨天只讲了创建以及增加和查询, 其实用法都差不多,今天学长也是在原有的基础上写的,还顺便融合了Share ...
- Android SQLite (一) 数据库简介
大家好,今天来介绍一下SQLite的相关知识,并结合Java实现对SQLite数据库的操作. SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎.它支持大多数的SQL92标准 ...
- Android sqlite管理数据库基本用法
Android操作系统中内置了sqlite数据库(有关sqlite数据库详细介绍见:http://zh.wikipedia.org/wiki/SQLite),而sqllite本身是一个很小型的数据库, ...
- android SQLite(安卓数据库的插入显示删除)
1.利用android自带数据库实现增加.删除.显示用户等操作 只是一个基本模型,为即将的与 复利计算apk整合做牺牲. 就不上传百度云供大家下载了 等整合了复利计算再上传. 数据的插入和显示: ...
- android: SQLite创建数据库
SQLite 是一款轻量级的关系型数据库,它的运算速度非常快, 占用资源很少,通常只需要几百 K 的内存就足够了,因而特别适合在移动设备上使用.SQLite 不仅支持标准的 SQL 语法,还遵循了数据 ...
- NDK中android.mk文件的简单介绍和第三方库的调用
先贴一个样例,然后解释一下: LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := mydjvuapi SRC_FILE_ ...
- *.db-journal 是什么(android sqlite )数据库删除缓存
sqlite的官方文档,发现该文件是sqlite的一个临时的日志文件,主要用于sqlite数据库的事务回滚操作了.在事务开始时产生,在事务操作完毕时自动删除,当程序发生崩溃或一些意外情况让程序非法结束 ...
- [ios]sqlite轻量级数据库学习连接
SQLLite (一)基本介绍 http://blog.csdn.net/lyrebing/article/details/8224431 SQLLite (二) :sqlite3_open, sql ...
- Android 懒加载简单介绍
1.懒加载介绍 1.1.效果预览 1.2.效果讲解 当页面可见的时候,才加载当前页面. 没有打开的页面,就不会预加载. 说白了,懒加载就是可见的时候才去请求数据. 1.3.懒加载文章传送门 参考文章: ...
随机推荐
- PE解析器与加载器编写指南
PE解析器与加载器编写指南 最近准备去实习,看公司要求应该开发PE相关的查杀引擎,因此再回头复习一下PE格式,重新写一个PE解析器和PE加载器,再此记录下有关坑. PE解析器部分: 1)如何确定节区表 ...
- JS基础知识点(二)
== 与 === 对于 == 来说,如果对比双方的类型不一样的话,就会进行类型转换,就会进行如下判断流程: 1.首先会判断两者类型是否相同,相同则会进行严格相等比较=== 2.判断是否在对比null和 ...
- Oracle表的基本查询
Oracle 分页 1.rownum分页 Select * from emp; Select a1.*,rownum rn from (Select * from emp) a1; 2.显示rownu ...
- requests接口自动化7-Multi/form-data文件上传形式的post请求:files
Multi/form-data文件上传形式的post请求:用files传参 fiddler里请求响应内容; 代码: import requests from requests_toolbelt imp ...
- Python模块04/包/logging日志
Python模块04/包/logging日志 目录 Python模块04/包/logging日志 内容大纲 1.包 2.logging日志 3.今日总结 内容大纲 1.包 2.logging日志 1. ...
- 数据可视化实例(八): 边缘直方图(matplotlib,pandas)
https://datawhalechina.github.io/pms50/#/chapter6/chapter6 边缘直方图 (Marginal Histogram) 边缘直方图具有沿 X 和 Y ...
- 空间金字塔池化 ssp-net
<Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition>,这篇paper提出了空间金字 ...
- How to install chinese input method
在Ubuntu中安装中文输入法确实比较麻烦,特别是英文版的Ubuntu系统 Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等.其中Scim和Ib ...
- java学习第七天2020/7/12
一. java继承使用的关键字是 extend class 子类 extends 父类{} 举一个类的例子: public class person { public String name; pu ...
- 6 个珍藏已久 IDEA 小技巧,这一波全部分享给你!
每周趣图 产品经理设计体验/用户实际体验 本周就不写技术分析文章了,分享几个珍藏已久的 IDEA 的「骚技巧」,助你快速完成代码. 还等什么?赶紧上车吧...... 先赞后看,养成习惯.微信搜索「程序 ...