- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
android__sqlite_非常实用的资料
前两篇日志我已经总结了本地数据存储的前两种:文件和配置项。还剩下最后一种数据库存储——SQLite。 ? 一、SQLite简介 ? 在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持?NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型虽然只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s)?等数据类型,只不过在运算或保存时会转成对应的五种数据类型。?SQLite最大的特点是你可以保存任何类型的数据到任何字段中,无论这列声明的数据类型是什么。例如:可以在Integer字段中存放字符串,或者在布尔型字段中存放浮点数,或者在字符型字段中存放日期型值。 但有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数, 当向这种字段中保存除整数以外的数据时,将会产生错误。另外,?SQLite?在解析CREATE TABLE?语句时,会忽略?CREATE TABLE?语句中跟在字段名后面的数据类型信息。 ? 二、SQLite的CURD ?????? Android提供了一个名为SQLiteDatabase的类,该类封装了一些操作数据库的API,使用该类可以完成对数据进行添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)操作(这些操作简称为CRUD)。对SQLiteDatabase的学习,我们应该重点掌握execSQL()和rawQuery()方法。?execSQL()方法可以执行insert、delete、update和CREATE TABLE之类有更改行为的SQL语句;?rawQuery()方法可以执行select语句。SQLiteDatabase还专门提供了对应于添加、删除、更新、查询的操作方法:?insert()、delete()、update()和query()?。这些方法实际上是给那些不太了解SQL语法的菜鸟使用的,对于熟悉SQL语法的程序员而言,直接使用execSQL()和rawQuery()方法执行SQL语句就能完成数据的添加、删除、更新、查询操作。 ? 三、SQLite的事务管理 ?????? 使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction()?方法时会检查事务的标志是否为成功,如果为成功则提交事务,否则回滚事务。当应用需要提交事务,必须在程序执行到endTransaction()方法之前使用setTransactionSuccessful()?方法设置事务的标志为成功,如果不调用setTransactionSuccessful()?方法,默认会回滚事务。 ? 三、SQLite创建、更新数据表 ?????? 如果应用使用到了SQLite数据库,在用户初次使用软件时,需要创建应用使用到的数据库表结构及添加一些初始化记录,另外在软件升级的时候,也需要对数据表结构进行更新。在Android系统,为我们提供了一个名为SQLiteOpenHelper的类,该类用于对数据库版本进行管理,该类是一个抽象类,必须继承它才能使用。为了实现对数据库版本进行管理,SQLiteOpenHelper类有两种重要的方法,分别是onCreate(SQLiteDatabasedb)和onUpgrade(SQLiteDatabasedb, intoldVersion, intnewVersion) ? 当调用SQLiteOpenHelper的getWritableDatabase()或者getReadableDatabase()方法获取用于操作数据库的SQLiteDatabase实例的时候,如果数据库不存在,Android系统会自动生成一个数据库,接着调用onCreate()方法,onCreate()方法在初次生成数据库时才会被调用,在onCreate()方法里可以生成数据库表结构及添加一些应用使用到的初始化数据。onUpgrade()方法在数据库的版本发生变化时会被调用,数据库的版本是由程序员控制的,假设数据库现在的版本是1,由于业务的需要,修改了数据库表的结构,这时候就需要升级软件,升级软件时希望更新用户手机里的数据库表结构,为了实现这一目的,可以把原来的数据库版本设置为2(或其他数值),并且在onUpgrade()方法里面实现表结构的更新。当软件的版本升级次数比较多,这时在onUpgrade()方法里面可以根据原版号和目标版本号进行判断,然后作出相应的表结构及数据更新。 ? getWritableDatabase()和getReadableDatabas
您可能关注的文档
- 2011年上半年基础会计和财经法规考试点.doc
- 2011年上半年护士理论考试题.doc
- 2011年上海市中考化学试卷(含答案和解析).doc
- 2011年上学期初三第一次月考.doc
- 2011年下半年大三班教育教学计划.doc
- 2011年下学期体育教学工作总结Microsoft Word 文档.doc
- 2011年下学期七年级生物中考试题.doc
- 2011年中考主要变点.doc
- 2011年中考图表类题汇编.doc
- 2011年中考热点-日本核辐射污染.doc
- 2025年新人教版英语八年级上册全册同步课件.pptx
- 2025年秋新人教版数学8年级上册全册课件.pptx
- 2025年秋新人教版三年级上册英语整册课件.pptx
- 2025年秋新人教版数学二年级上册整册课件 (2).pptx
- 2025年秋新人教版数学2年级上册整册课件 (2).pptx
- 2025年秋统编版语文三年级上册全册同步教学课件(课标版).pptx
- 2025年秋统编版语文三年级上册全册同步课件(课标版).pptx
- 2025年秋统编版语文三年级上册整册教学课件(课标版).pptx
- 2025年秋统编版语文三年级上册整册课件(课标版).pptx
- 2025年秋统编版语文3年级上册全册课件(课标版).pptx
最近下载
- 和田玉石课件.pptx VIP
- 新视野大学英语(第四版)读写教程2(思政智慧版)电子教案Unit3.docx VIP
- 软件开发流程控制程序.docx VIP
- 第四章电感传感器.ppt VIP
- HSE 管理手册(中石油 健康、安全与环境管理体系).docx VIP
- 《小学开学第一课立规矩主题班会》课件.pptx VIP
- 2025广东江门鹤山市供销合作联社直(下)属企业及基层社招聘工作人员3人笔试备考试题及答案解析.docx VIP
- 初中信息技术第一课PPT课件.pptx VIP
- 教学能力大赛国赛一等奖《老年人日常生活照护》-教学实施报告.pdf VIP
- 青海省建筑工程资料管理规程2019.docx VIP
文档评论(0)