我在我的项目中使用GreenDao库,当我想从数据库中读取数据时遇到问题,它给了我android.database.sqlite.SQLiteException: no such table
。
我知道发生这种情况的原因。这是因为当我生成Scheme并添加如下实体时:addEntity("userX")
生成的表为USER_X
。
问题是我已经从资产加载了数据库,并且表名是userX
,而不是USER_X
。我在greendao doc中读到:For example, a property called “creationDate” will become a database column “CREATION_DATE”.
我的问题是如何更改这些默认设置?
我已经在文档中搜索了解决方案,但没有找到任何解决方案。我的问题有解决方案吗?
谢谢
最佳答案
我从未使用过它,但是在this documentation和this source code看来,对实体使用这种方法似乎是可能的
Entity e = addEntity("userX");
e.setTableName("userX");
这对于属性
e.addDateProperty("creationDate").columnName("creationDate");