listLobs()

名称

listLobs - 列取集合中的大对象。

语法

db.collectionspace.collection.listLobs([SdbQueryOption])

类别

Collection

描述

获取集合中的大对象列表,并通过游标(cursor)的方式返回。

参数

  • SdbQueryOption( Object选填 )

使用一个对象来指定记录查询参数。使用方法可参考SdbQueryOption

Note:

特殊的,当使用SdbQueryOption指定hint为{"ListPieces": 1}时,可以列取lob的分片详细信息

返回值

成功:返回DBCursor对象。

失败:抛出异常。

错误

listLobs()函数常见异常如下:

错误码错误类型描述解决方法
-6SDB_INVALIDARG参数错误。查看参数是否填写正确。
-34SDB_DMS_CS_NOTEXIST集合空间不存在。检查集合空间是否存在。
-23SDB_DMS_NOTEXIST集合不存在。检查集合是否存在。

当异常抛出时,可以通过getLastError()获取错误码,或通过getLastErrMsg()获取错误信息。可以参考常见错误处理指南了解更多内容。

示例

  • 列取 foo.bar 中的所有大对象
  1. > db.foo.bar.listLobs()
  2. {
  3. "Size": 2,
  4. "Oid": {
  5. "$oid": "00005d36c8a5350002de7edc"
  6. },
  7. "CreateTime": {
  8. "$timestamp": "2019-07-23-16.43.17.360000"
  9. },
  10. "ModificationTime": {
  11. "$timestamp": "2019-07-23-16.43.17.508000"
  12. },
  13. "Available": true,
  14. "HasPiecesInfo": false
  15. }
  16. {
  17. "Size": 51717368,
  18. "Oid": {
  19. "$oid": "00005d36cae8370002de7edd"
  20. },
  21. "CreateTime": {
  22. "$timestamp": "2019-07-23-16.52.56.278000"
  23. },
  24. "ModificationTime": {
  25. "$timestamp": "2019-07-23-16.52.56.977000"
  26. },
  27. "Available": true,
  28. "HasPiecesInfo": false
  29. }
  30. Return 2 row(s).
  31. Takes 0.002045s.
  • 列取 foo.bar 中的大小大于10的大对象
  1. > db.foo.bar.listLobs( SdbQueryOption().cond( { "Size": { $gt: 10 } } ) )
  2. {
  3. "Size": 51717368,
  4. "Oid": {
  5. "$oid": "00005d36cae8370002de7edd"
  6. },
  7. "CreateTime": {
  8. "$timestamp": "2019-07-23-16.52.56.278000"
  9. },
  10. "ModificationTime": {
  11. "$timestamp": "2019-07-23-16.52.56.977000"
  12. },
  13. "Available": true,
  14. "HasPiecesInfo": false
  15. }
  16. Return 1 row(s).
  17. Takes 0.003665s.