LitePal学习总结 (三)

来源:互联网 发布:科比数据图 编辑:程序博客网 时间:2024/05/22 03:12

LitePal框架是郭神的开源框架,郭神博客


学习总结的第一篇总结了如何配置LitePal,第二篇总结了如何利用LitePal创建数据库及数据表。而本篇则是总结了如何利用LitePal更新数据表。

在上一篇中,我们在demo数据库中创建了News数据表,但是现在需求有变,每一篇新闻对应的评论,则我们还需要一个Comment表。那该如何利用LitePal去更新数据库呢?

根据创建News表的经验,我们要想创建Comment表,首先要有一个Comment表对应的Model,也就是说,我们要去创建一个实体类(Comment类)。

package org.guya.litepaltest.model;public class Comment {private int id;private String content;        ...        set、get方法}

然后去litepal.xml文件中去注册。

<?xml version="1.0" encoding="utf-8"?><litepal>    <dbname value="demo" >    </dbname>    <version value="2" >    </version>    <list>        <mapping class="org.guya.litepaltest.model.News" >        </mapping>        <mapping class="org.guya.litepaltest.model.Comment" >        </mapping>    </list></litepal>

注册的同时,不要忘了把数据库的版本号对应的值(Value)加上1,不然进入程序会直接崩了。

然后我们去执行

SQLiteDatabase db = Connector.getDatabase();
这样,我们就完成了数据库的表的更新,自此,我们的demo数据库就多了一个Comment表。



如果想要更新现有表的结构,那么我们该怎么破呢?没错,就是你想的那样(郭神,请允许我装B一下,o(∩_∩)o 哈哈)。假设我们想在Comment数据表里添加一个字段发布时间(pubDate),那么只需要在实体Comment里添加一个对应的字段即可。

package org.guya.litepaltest.model;import java.util.Date;public class Comment {private int id;private String content;private Date pubDate;set、get方法}


然后去litepal.xml文件里修改一下版本号的值(value)即可,把value加1。



自此,我们又利用LitePal完成了更新已有表的情况。


那么,你又想,既然我能够利用LitePal完成已有表的字段的增加,那么,我想删除一个字段怎么破,比如我想删除content字段。

郭神也为我们做好了准备,啊,郭神威武。

那么怎么做呢,对,就是你想的那样,ORM模式,我们只需要删除实体Comment中的content字段,然后去修改一下litepal.xml里的value值即可,千万别因为太简单而激动的把修改版本号给忘了。



以此类推,我想删除一个表,比如Comment表我不想要了,那么怎么破?

没错,就是你想的,我们只需要在litepal.xml把注册的类删掉就可以了,至于实体类删不删随便你,不过修改完后别忘了使版本号(value)的值加1哟。
















0 0
原创粉丝点击