Database 在Couchbase中交换存储桶
在表交换之后,我喜欢在Couchbase的服务器存储桶中执行相同的操作 例如,给定的桶:Database 在Couchbase中交换存储桶,database,sdk,couchbase,n1ql,Database,Sdk,Couchbase,N1ql,在表交换之后,我喜欢在Couchbase的服务器存储桶中执行相同的操作 例如,给定的桶: foo和foo\u new 我想把名字换成: foo_old和foo MySQL等效命令是:将表foo重命名为foo_-old,将foo_-new重命名为foo 此外,我喜欢通过JavaSDK而不是手动进行更改 我发现它声明不可能更改bucket名称 在新版本中可能吗?到目前为止,我还没有找到能够做到这一点的方法。没有用于重命名存储桶的N1QL命令。也没有计划。由于您无法从UI更改bucket的名称,因此可
foo
和foo\u new
我想把名字换成:
foo_old
和foo
MySQL
等效命令是:将表foo重命名为foo_-old,将foo_-new重命名为foo代码>
此外,我喜欢通过JavaSDK而不是手动进行更改
我发现它声明不可能更改bucket名称
在新版本中可能吗?到目前为止,我还没有找到能够做到这一点的方法。没有用于重命名存储桶的N1QL命令。也没有计划。由于您无法从UI更改bucket的名称,因此可以肯定地说,也没有用于更改的API
您必须使用一个API命令来创建一个新bucket,使用一组N1QL命令在新bucket上创建新索引,然后将所有文档从旧bucket复制到新bucket,可能需要使用INSERT-SELECT
除非您使用非常小的存储桶(可能是出于测试目的),否则我不推荐这种方法。您知道它是否因为某些业务逻辑而不受支持吗?我不知道为什么不支持重命名存储桶。我认为我们可以很容易地支持它,但需求从来都不够大。在某个时候,一个足够大的客户会向我们索要,我们会建造它。