【问题标题】:Google Cloud Datastore - Java - GQLQuery CursorsGoogle Cloud Datastore - Java - GQLQuery 游标
【发布时间】:2015-12-19 02:15:37
【问题描述】:

我对如何在 GQL 查询中正确传递游标有点困惑。这是我目前所拥有的:

DatastoreV1.GqlQuery.Builder query = DatastoreV1.GqlQuery.newBuilder().setQueryString(q);
query.addNameArgBuilder().setName("cursor").setCursor(cursor);

我的查询字符串以OFFSET @cursor结尾。

如果我有一个光标可以通过,我可以看到它应该如何正常工作。但是,第一次运行查询时,我没有游标,所以我将传递 null

我是否需要编写一个单独的查询(不带OFFSET @cursor)来最初运行,并且只在从结果集中检索一个游标时传递一个游标,或者如果传递一个空游标,查询是否仍能正确运行?

【问题讨论】:

    标签: java datastore gql google-cloud-datastore gqlquery


    【解决方案1】:

    GQL 查询字符串中的每个绑定都需要相应的 arg。但是您可以使用空游标来指示查询应该从结果集的开头开始:

    import com.google.protobuf.ByteString;
    
    ...
    
    GqlQuery.Builder query = GqlQuery.newBuilder().setQueryString(q);
    query.addNameArgBuilder()
        .setName("cursor")
        .setCursor(ByteString.EMPTY);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-07
      • 1970-01-01
      • 1970-01-01
      • 2020-12-30
      • 2023-03-20
      • 1970-01-01
      • 2021-10-31
      • 2015-08-21
      相关资源
      最近更新 更多