您的位置:首页 > 数据库

SQLite数据库的操作--数据库存储

2014-01-12 17:50 155 查看
Using Databases

 



 

 

第一步:创建一个工程

 

在开始写项目前,先配置测试



 

 

第二部:继承SQLiteOpenHelper类

 



 

系统能够自动创建这个数据库

 

建立一个db的包,定义一个DbOpenHelper的方法继承SQLiteOpenHelper

 

 


 

 

首先定义构造函数,保留上下文参数

 

 


 

 

数据库的创建

建表语句的形成

 

 


 

 

建立一个test的包,定义一个MyTest类继承TestCase类

 

 


 

 

 

番外:当我写到这里的时候,几次测试都没有出现data中就是没有文件显示。各种百度之后(我都想哭类,data文件夹怎么测试都没有文件显示,最后的问题竟然是,Android的模拟机和真机不能同时存在,天知道我只是把手机充电而已呀。)

 

 

测试之后再data文件夹中生成数据库

 

 


 

 

在SQLte Expert工具的配合下可以看到自己创建的数据库了。

 

 


 

 

 

在创建数据库的同时,可能还要考虑到数据库的升级问题

 

 


 


 

 

数据库的升级,就是添加一列,对数据库进行重命名,但是新版本不能对老版本有用数据进行破坏。

 

 


 


 

 

在更新的过程中,注意要更改数据库的版本好,如果更新的版本没有高于老的版本的时候,就不会执行更改的内容。

 

更改后的结果:

 

 


 

 

在上面解决了SQLiteOpenHelper类的继承

 

 

数据库的增删改查的功能

 

首先:建立一个service包,定义一个PersonService的接口

 

 




 

 

(这里就回出现单词拼错的情况,在变成中单词拼错有时候是最脑残的问题了。初学的人,甚至会用半天找一个单词拼音错误。但是如果写的时间长了,一方面是非常数据单词拼写,甚至用快捷键完全不用担心出现这种问题。一方面是,有了自己的一套解决问题的方式,能够根据错误信息,找到自己出错的地方,进而快速改正代码。--0_0---)

 

 

声明一个数据库的访问类PersonDao继承PersonService接口

 



 

 

实现数据库的添加的方法:

 

 




 

 

 

单元测试,先将工程运行起来。

 

测试结果:

 

 


 

 

数据库数据添加成功

 

删除操作:

 

 


 

 

删除结果:

 

 


 

 

数据库的修改操作:

 

 


 

(这个地方的update写错了)

 

 

数据库查询:封装成map的方式

 

查询数据库单条记录的方式

 

 


 

Return map;

 

 

查询数据库多条数据的方式

 

 


Return list;

 

 

在insert中一个一个测试之后的数据库的结果为:

 

 


 

 

在MyTest测试中定义一个updateDB的方法

 

 


 

测试的结果是:

 

 


 

 

在MyTest中定义一个查询ViewDB的方法

 

 


 

测试结果是:

 

 


 

 

在MyTest中定义一个查询所有数据listViewDB2的方法

 

 


 

测试结果是:

 

 


 

 

以上是基本的增删查改的方法

 

 

 

API中有另一种查询方式

 

根据API文档我们知道,真正的数据库的插入和删除的方法应该是

 

 


 

番外:

(在我们学习Android开发的时候,需要我们有一定的英文基础,要能看懂API,API中有很多有效,有用的建议和向导。)

 

 

 

 

首先在以后的项目基础上

 

再在service包中定义一个PersonService2的接口,和PersonService没有什么不同的(这样以防出现覆盖)

 

在dao包中定义个PersonDao2的类,继承PersonService2接口

 

 

 


 

 

 

insert方法的API

 

 


因为这种方式是比较简单的,而其以后会经常的用到,所以,现在一步一步的分析

 

 

 

1.在PersonService2接口中定义

 

 


 

 

2.在PersonDao2类中定义addPerson方法

 

 



 

 

3.在MyTest2中定义Test方法

 

 


 

测试结果是:

 

 


 

 

Delete方法的API

 

 


 

代码如下:

 



 


 


 

 

update方法的API

 

 


 

代码如下:

 

 






 

 

测试结果是:

 

 


 

 

查询的API

 

 


 

这个有一定的JDBC数据库基础的人更容易理解一些。

 

 

测试单条记录

 

代码如下:

 

 






 

 

 

测试结果:

 

 


 

 

查询多条记录

 

代码如下:

 

 






 

 

测试结果:

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: