ActiveAndroid数据库table的基本数据库操作
来源:互联网 发布:java select二级联动 编辑:程序博客网 时间:2024/06/06 04:56
ActiveAndroid的配置与基本使用可参考官方文档:https://github.com/pardom/ActiveAndroid
1.给表添加字段
修改配置文件
<meta-data android:name="AA_DB_VERSION" android:value="2" />
添加SQL语句:main\assets\migrations\2.sql
ALTER TABLE book ADD COLUMN pages INTEGER;
重新运行应用则添加字典成功
2.表删除字段(大坑)
按Sqlite官方文档的说法:
The only schema altering commands directly supported by SQLite are the “rename table” and “add column” commands shown above
可参考:https://www.sqlite.org/lang_altertable.html
总之各种尝试在不卸载应用重新安装和删除数据库文件的条件下没有实现删除字段的功能,有谁发现解决办法分享一下啊
3.表修改字段同上,未试验
4.添加表
添加表很容易,和第一次创建表的方式一样,继承Model,添加注解@Table @Column,然后在配置文件中升级数据库版本,重新运行应用即添加成功
@Table(name = "Authors")public class Author extends Model{ @Column(name = "name") private String name; @Column(name = "age") private int age; public Author() { } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
<meta-data android:name="AA_DB_VERSION" android:value="5" />
5.删除表
添加SQL语句,升级数据库版本
<meta-data android:name="AA_DB_VERSION" android:value="7" />
DROP TABLE Author;
6.当为一个类添加一个对象属性,需要在数据库中建立一个新的表,并连接外键。
新建表的操作,同上。
在原有表中添加对象id字段
ALTER TABLE book ADD COLUMN author INTEGER;
升级数据库
<meta-data android:name="AA_DB_VERSION" android:value="9" />
注意ActiveAndroid能自动处理的粒度只是基本数据类型,当某类的属性为对象类型是,需要对其属性和对象分别进行保存
Book book = new Book(); Author author = new Author(); author.setName("Xxx"); book.setAuthor(author); book.setName("ActiveAndroid"); book.setBuyTime(new Date()); book.setPages(300); book.setPrice((float)30.0); author.save(); book.save();
Last word:
在使用ActiveAndroid进行应用开发时,需要更新数据表结构时操作会比较繁琐,当结构修改无效果是可以尝试升级下数据库的版本,一些时候虽然你添加了对应升级数据要运行的SQL语句,但由于开发时会频繁地测试代码,很可能数据库的版本已经升级到了你所保存的SQL语句对应的等级
- ActiveAndroid数据库table的基本数据库操作
- Activeandroid对数据库的操作
- ActiveAndroid 管理数据库操作
- MySql数据库中Table的基本操作
- ActiveAndroid 数据库
- ActiveAndroid 新增字段的数据库升级
- Android之数据库框架ActiveAndroid的使用
- Android ORM数据库--ActiveAndroid的使用
- ActiveAndroid 管理数据库
- ActiveAndroid 管理数据库
- ActiveAndroid 管理数据库
- ActiveAndroid 管理数据库
- Android数据库管理-ActiveAndroid
- 数据库的基本操作
- 数据库的基本操作
- 基本的数据库操作
- 数据库的基本操作
- 数据库的基本操作
- 十万个为什么——为什么我的ctrl+z没法用?
- YYImage
- Android TV Input Framework(TIF)--2 构建TV input list
- 关于JS中的this
- Java 多态
- ActiveAndroid数据库table的基本数据库操作
- 统计学(学习笔记1)
- LeetCode-Merge Two Sorted Lists--链接两个有序链表
- REG QUERY命令参数(注册表)
- Android Studio 自动更新失败解决办法
- Java多态性理解
- jdk,jre,jvm三者的联系和区别
- Sass-Ruby及Sass、Compass在Windows下安装
- 安装go环境