Android-在 GreenDao 数据库中添加默认值
2015-11-12 22:27
447 查看
我想问问,如果有可能性时创建 greenDao 数据库添加默认值吗?
当我使用数据库和表的那就无需创建此模型时,总是添加默认值。
知道 sqlite 支持
现在我们可以对此进行支持最有可能修改
注: 测试时此更改,请确保您 sqlite 架构版本递增或重新安装您的应用程序,以便重新创建数据库获取。
转载:http://www.itstrike.cn/Question/d7201931-b8ec-4f46-be21-0e27224ec3c5.html
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
相关文章推荐
- 【android】让popupwindow显示在view的上方并与该view水平居中对齐
- android 系统回调onSizeChange, onMeasure, onLayout调用时机
- 浅析Android View的Layout过程
- android view构造函数研究
- Android 动态添加view
- Android获取TextView的长度
- android传递数据bundle封装传递map对象
- ListView的多选模式
- android高级控件ListView
- Android卡片新闻页优化实践
- android基础控件
- 35.Android .gitignore 模板
- 获取文字宽度
- Android自定义RatingBar(评分控件)
- Android中Handler引起的内存泄露
- Android中常见的资源获取方式
- android Activity和Fragment之间的数据传输的实现
- android换肤你所应该知道的一切------换肤精华
- 类对象,类名.class与类名.this
- android 很多牛群叉界面库github地址