标签: greendao

为什么GreenDAO不完全支持LIKE运算符?

GreenDAO只支持LIKE运算符的一个位置.它是" LIKE ?"

我想用各种这样的运算符来获取记录.例如" LIKE %?"," LIKE ?%"" LIKE %?%".但GreenDAO不支持它.

此外,我已经使用queryRaw()queryRawCreate(),遗憾的是它没有工作了.例如:

libDocSeriesDao.queryRawCreate("其中T.Title喜欢'%?%'或T.ViewTitle喜欢'%?%'",aKeyword,aKeyword).listLazy();

任何帮助将不胜感激.

android greendao

6
推荐指数
2
解决办法
3821
查看次数

greendao按相关表格中的字段排序

有没有办法用greenDao按相关表格中的字段排序?比如我有一张汽车桌和一张司机桌.每辆车都有一个司机.现在我想查询(例如蓝色)汽车并按驱动程序的名称排序

android greendao

6
推荐指数
2
解决办法
4984
查看次数

DaoException:实体与DAO上下文分离

我有两个实体,UserStore.User有很多Stores(1:M)关系.我已经通过以下代码将一些商店列表插入到商店表中.

public void saveStoresToDatabase(Context context, ArrayList<Store> storeList) {

    DevOpenHelper helper = new DaoMaster.DevOpenHelper(context, "notes-db", null);
    SQLiteDatabase db = helper.getWritableDatabase();
    DaoMaster daoMaster = new DaoMaster(db);

    DaoSession daoSession = daoMaster.newSession();
    StoreDao storeDao = daoSession.getStoreDao();

    ArrayList <Store> list = SharedData.getInstance().getUser().getStoreList();

    for(int i = 0; i < storeList.size(); i++) {
        storeList.get(i).setUserIdForStore(SharedData.getInstance().getUser().getId());
    }
    storeDao.insertOrReplaceInTx(storeList);
    list.addAll(storeList);
    user.resetStoreList();

}
Run Code Online (Sandbox Code Playgroud)

每当我尝试通话时,我都会得到"实体与DAO上下文分离"异常 user.getStoreList().发生异常,在下面的代码狙击为daoSessionnull.

public ArrayList<Store> getDMStoreListFromDatabase(Context context) {
    return SharedData.getInstance().getUser().getStoreList();
}
Run Code Online (Sandbox Code Playgroud)

SharedData我的单身人员在哪里,有一个用户对象:

private SharedData() { …
Run Code Online (Sandbox Code Playgroud)

greendao

6
推荐指数
1
解决办法
6465
查看次数

GreenDao深度查询n:m关系

我在我的应用程序中有一个这样设计的关系: 关系描述 我正在尝试选择至少有一个用户作为朋友的所有聊天.

基本上,我想执行此查询:

SELECT c.* FROM CHAT c, USER u, UserChats uc 
  WHERE c.type = myType 
  AND u.isFriend = 1 
  AND c.id = uc.chatId 
  AND u.id = uc.userId
Run Code Online (Sandbox Code Playgroud)

我还没有找到办法在GreenDao图书馆中执行此操作,并希望有人能够帮助我.

编辑:
这是我现在所拥有的:

List<UsersChats> list = usersChatsDao.queryDeep(
    "WHERE T0." + UserDao.Properties.isFriend.collumnName + " = ? "+
    "AND T1." + ChatDao.Properties.type.collumName + " = ?",
    new String[] {"1", myType});

if(list != null && list.isEmpty() == false) {
    List<Chat> chats = new ArrayList<Chat>();
    for(UsersChats link : list) {
        chats.add(link.getChat());
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-sqlite greendao

6
推荐指数
1
解决办法
3191
查看次数

GreenDao支持多列的唯一约束

GreenDao是否支持多列的唯一约束?相当于以下内容:

create table projects (
  _id integer primary key autoincrement,
  project_type text,
  name text,
  unique (project_type, name)
);
Run Code Online (Sandbox Code Playgroud)

android greendao

6
推荐指数
2
解决办法
3518
查看次数

如何使用GreenDao执行"从emp中选择不同的ename"

如何使用GreenDao执行"从emp中选择不同的ename"

我试图使用GreenDao获取sqlite数据库列的不同值.我该怎么做?任何帮助赞赏.

greendao

6
推荐指数
1
解决办法
6770
查看次数

如何根据条件从GreenDao中删除行?

我想根据条件从表中删除行.喜欢

"从表中删除Name ='Value'"

我在这里使用greenDAO数据库.

mobile android greendao

6
推荐指数
1
解决办法
5155
查看次数

与单个表的多个toMany关系

我是greenDAO的新手,我正在编写DaoGenerator.我遇到的一个问题是我有一个用户表和一个wallpost表.我希望能够在wallpost表中有两列与用户表(墙所有者和发布用户)的很多关系,他们可能是也可能不是同一个用户,但到目前为止它看起来不像可以有两个toMany关系,指向同一个表中的单个表.

有没有更好的方法来做到这一点/一种方法来实现这一目标?我希望能够通过调用.getOwner()和.getPoster()来加载墙贴并获取墙所有者并发布用户.

谢谢

orm android relational-database greendao

5
推荐指数
1
解决办法
693
查看次数

如何将greenDAO与JSON Jackson集成并处理多对多关系映射

有没有最好的方法将JSON Jackson与greenDAO整合在一起.此外,如何使用greenDAO处理多对多关系映射.我发现,我们需要创建一个具有多对多映射的连接表.有没有任何例子将所有这些功能结合在一起.

orm android greendao

5
推荐指数
1
解决办法
918
查看次数

如果我们比较Android的Realm和GreenDAO本地存储数据库哪一个更好?是什么原因使其中一个变慢?

我正在开发一个Android应用程序,并希望使用数据库进行本地存储.我已经在互联网上搜索并找到了本地存储数据库之间的一些比较.但我必须在Realm和GreenDAO之间进行选择.所以请建议我使用哪一个.

performance orm realm nosql greendao

5
推荐指数
1
解决办法
3218
查看次数