SequoiaDB 简介						 
					
						快速入门						 
					
						安装部署						 
					
						数据库实例						 
					
						分布式引擎						 
					
						SAC 管控中心						 
					
						SequoiaPerf 性能分析工具						 
					
						参考手册						 
					
						常见问题及解答(FAQ)						 
					
						版本信息						 
					
returnItem - 恢复指定的回收站项目
db.getRecycleBin().returnItem(<recycleName>, [options])
SdbRecycleBin
该函数用于恢复指定的回收站项目。
recycleName( string,必填 )
需恢复的回收站项目名称
options( object,选填 )
通过 options 可以设置其他选填参数:
Enforced( boolean ):是否删除冲突的集合或集合空间,默认为 false,表示对冲突进行报错处理
该参数取值为 true 表示在恢复回收站项目时,如果存在相同名称或相同 uniqueID 的集合或集合空间,将强制删除原有的集合或集合空间,以解决冲突。
格式:Enforced: true
函数执行成功时,将返回一个 BSONObj 类型的对象。通过该对象获取恢复后的集合空间或集合的名称。
函数执行失败时,将抛异常并输出错误信息。
returnItem() 函数常见异常如下:
| 错误码 | 错误类型 | 可能发生的原因 | 解决办法 | 
|---|---|---|---|
| -384 | SDB_RECYCLE_ITEM_NOTEXIST | 回收站项目不存在 | 通过 SdbRecycleBin.list() 检查回收站项目是否存在 | 
| -385 | SDB_RECYCLE_CONFLICT | 回收站项目冲突 | 通过 returnItemToName() 将需要恢复的项目重命名,或指定参数 Enforced 为 true | 
当异常抛出时,可以通过 getLastErrMsg() 获取错误信息或通过 getLastError() 获取错误码。更多错误处理可以参考常见错误处理指南。
v3.6 及以上版本
查看当前已存在的回收站项目
> db.getRecycleBin().list()
{
  "RecycleName": "SYSRECYCLE_9_21474836481",
  "RecycleID": 9,
  "OriginName": "sample.employee",
  "OriginID": 21474836481,
  "Type": "Collection",
  "OpType": "Drop",
  "RecycleTime": {
    "$timestamp": "2022-01-24-12.04.12.000000"
  }
}恢复名为“SYSRECYCLE_9_21474836481”的回收站项目
> db.getRecycleBin().returnItem("SYSRECYCLE_9_21474836481")
{
  "ReturnName": "sample.employee"
} 展开
            展开
          
   
   
   
   
   
   
   
