Android-在 GreenDao 数据库中添加默认值
来源:互联网 发布:我老婆是网络女主播 编辑:程序博客网 时间:2024/05/13 12:36
我想问问,如果有可能性时创建 greenDao 数据库添加默认值吗?
Example:Property pictureIdProperty = user.addLongProperty("pictureId").getProperty();Property thumbnailIdProperty = user.addLongProperty("thumbnailId").getProperty();//and here I need something like this://thumbnailIdProperty.setDefault(-1); //there is possible to add user.addToOne(picture, pictureIdProperty);user.addToOne(picture, thumbnailIdProperty, "thumbnail");
当我使用数据库和表的那就无需创建此模型时,总是添加默认值。
解决方法 1:
我不相信有任何官方支持由 GreenDAO 项目为此从今天开始,但我有个主意。Sqlite 支持默认表约束可以应用于列。对于示例,下面的代码块显示的默认值为City
表中的列 Persons
是 '桑'。
CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) DEFAULT 'Sandnes' )
知道 sqlite 支持 Default
的限制,我们可以破解生成的 DAO
类。我将使用OrderDAO.java作为一个例子。下面的代码段是 GreenDAO 生成代码create table
代码块:
public static void createTable(SQLiteDatabase db, boolean ifNotExists) { String constraint = ifNotExists? "IF NOT EXISTS ": ""; db.execSQL("CREATE TABLE " + constraint + "'ORDERS' (" + // "'_id' INTEGER PRIMARY KEY ," + // 0: id "'DATE' INTEGER," + // 1: date "'CUSTOMER_ID' INTEGER NOT NULL );"); // 2: customerId }
现在我们可以对此进行支持最有可能修改 DEFUALT
约束。通过添加更改上面的代码块中的最后一个有关行 DEFAULT(-1)
。
"'CUSTOMER_ID' INTEGER NOT NULL DEFAULT(-1));"); // 2: customerId
注: 测试时此更改,请确保您 sqlite 架构版本递增或重新安装您的应用程序,以便重新创建数据库获取。
转载:http://www.itstrike.cn/Question/d7201931-b8ec-4f46-be21-0e27224ec3c5.html
0 0
- Android-在 GreenDao 数据库中添加默认值
- Android数据库ORM框架:GreenDao在AndroidStudio中使用
- 在gridview编辑中添加dropdownlist控件并使其为数据库的默认值
- Android开发 在AndoridStudio中引入GreenDAO
- 在android studio中使用greenDao
- 在android studio中配置GreenDao
- 在Android Studio中引入GreenDao
- android 数据库之greendao
- Android 数据库 GreenDao使用
- android数据库 greendao:3.1
- Android 数据库greenDAO基础
- Android 数据库 GreenDao
- Android GreenDao数据库
- 查询当前数据库中所有有默认值的字段,并生成添加默认值的SQL语句
- GreenDao 在 Android Studio 中的配置使用 之 更新数据库
- android中ORM(对象关系映射)数据库greenDAO的使用
- Android 用Retrofit进行网络获取数据,recyclerview进行展示在Fragment里,并存入到GreenDao数据库中
- 在Hibernate中使用数据库字段默认值的配置
- 50.Oracle数据库SQL开发之 子查询——编写多列子查询
- AndroidStudio使用gradle打包并实现多渠道打包
- Codeforces 595B Pasha and Phone 【数学计数】
- Reverse Nodes in k-Group
- 51.Oracle数据库SQL开发之 子查询——编写关联子查询
- Android-在 GreenDao 数据库中添加默认值
- 求最大子序列问题
- 赫夫曼树-c语言实现
- (重点)为一个新用户在Oracle中创建新数据库步骤 2012-10-25 10:27:02
- 52.Oracle数据库SQL开发之 子查询——编写嵌套子查询
- 机智的偶数求和
- UVa 10935 Throwing cards away I【队列模拟】
- 关于C++子类在继承父类的构造函数时的一些情况
- 详解Android中AsyncTask的使用