您的位置:首页 > 移动开发 > Android开发

Android开源数据库框架之LitePal

2017-06-27 18:08 381 查看
简介:郭大神对SQLite操作的封装,十分好用
1.添加依赖包:
compile'org.litepal.android:core:1.3.2'
 
2.New一个Directory为assets目录
新建一个litepal.xml文件添加如下内容:
<?xmlversion="1.0" encoding="utf-8" ?>
    <litepal>
    <dbnamevalue="History"></dbname>
    <!--dbname数据库名-->
    <versionvalue="1"></version>
    <!--version版本号-->
    <list>
    </list>
    <!--指定的映射模型-->
</litepal>
 
3.配置LitepalApplication,修改AndroidManifest.xml
在application标签下添加:
 andro
4000
id:name="org.litepal.LitePalApplication"
 
4.创建一个class类类似于表

publicclass Userhistory {

    private int id;

    private String name;

    private String address;

    private long seek;

………………..

Getting and Setting
 
5.回到litepal.xml添加映射模型
 <list>
        <mappingclass="com.rhy.mysql.Userhistory"></mapping>
 </list>
 
6.在活动中添加
 Connector.getDatabase();//创建数据库语句对应的History.db就创建出来了
 
7.如果需要在数据库中添加一个列直接在Userhistory添加就可以了
 
8.每次添加一张表对应的也要在litepal.xml的list标签里添加就可以了
 
@添加数据
让表类Userhistory继承DataSupport

Userhistoryvalues=new Userhistory();

               values.setName(et_name.getText().toString());

               values.setAddress(et_path.getText().toString());

               values.setSeek(Long.parseLong(et_seek.getText().toString()));
                values.save();//最后记得save一下

 
@更新数据
方法一:
Userhistoryvalues=new Userhistory();
               values.setName(et_name.getText().toString());
               values.setAddress(et_path.getText().toString());
               values.setSeek(Long.parseLong(et_seek.getText().toString()));
                values.save();
values.setName("我是你爸");
values.save();//限制性大
方法二:
Userhistoryvalues=new Userhistory();
               values.setSeek(Long.parseLong(et_seek.getText().toString()));
               values.updateAll("name
=
? and address=
?
","name","address");//第二第三个参数对应
第一个参数中问号对应的字段,指定为name=name,address=address的数据更新
更新为默认值:
Userhistoryvalues=new Userhistory();

values.setToDefault("name");

values.updateAll();

 
@删除数据
DataSupport.deleteAll(Userhistory.class,"条件","条件的值");//如第二参数name=?
第三参数"我是你爸"

 
@查询数据

List<Userhistory>users=DataSupport.findAll(Userhistory.class);

for(Userhistory user:users){
对应的字段

}
查询第一条数据:

Userhistory first=DataSupport.findFirst(Userhistory .class);
查询最后一条数据:

Userhistory last=DataSupport.findLast(Userhistory .class);
只查询哪几列数据:

List<Userhistory>us=DataSupport.select("name","address").find(Userhistory.class);
指定查询的约束条件:(where)
 List<Userhistory> us=DataSupport.where("条件","条件值").find(Userhistory
.class);
指定结果的排序:(order)
 List<Userhistory> us=DataSupport.order("列名 desc").find(Userhistory
.class);
前三条数据(limit)

  List<Userhistory>us=DataSupport.limit(3).find(Userhistory .class);
指定查询第二条到第四条数据

  List<Userhistory>us=DataSupport.limit(3).offset(1).find(Userhistory .class);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: