alter()

名称

alter - 修改集合空间的属性。

语法

db.collectionspace.alter(<options>)

类别

Collection Space

描述

修改集合空间的属性。

请参考 db.collectionspace.setAttributes()

参数

  • options ( Object必填 )

通过options参数可以修改集合空间属性:

  • PageSize ( Int32 ):数据页大小。单位为字节。

    • PageSize 只能选填 0,4096,8192,16384,32768,65536 之一。
    • PageSize 为 0 时,即默认值 65536。
    • 修改时不能有数据格式:PageSize : <num>
  • LobPageSize ( Int32 ):LOB 数据页大小。单位为字节。

    • LobPageSize 只能选填 0,4096,8192,16384,32768,65536,131072,262144,524288 之一。
    • LobPageSize 为 0 时,即默认值 262144。
    • 修改时不能有 LOB 数据格式:LobPageSize : <num>
  • Domain ( String ):所属域。

    • 集合空间的数据必须分布在新指定域的组上格式:Domain : <domain>

返回值

成功:无。

失败:抛出异常。

错误

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

错误码错误类型可能的原因解决方法
-32SDB_OPTION_NOT_SUPPORT选项暂不支持检查当前集合空间属性是否支持。

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

版本

v2.10及以上版本。

示例

  • 创建一个集合空间,数据页大小为 4096,然后将该集合空间的数据页大小修改为 8192。
  1. > db.createCS( 'foo', { PageSize : 4096 } )
  2. > db.foo.alter( { PageSize : 8192 } )
  • 创建一个集合空间,然后为该集合空间指定一个域
  1. > db.createCS( 'foo' )
  2. > db.foo.alter( { Domain : 'domain' } )