gpt4 book ai didi

db2 - 如何在 sql DB2 中重命名表/移动到不同的模式?

转载 作者:行者123 更新时间:2023-12-04 22:21:07 24 4
gpt4 key购买 nike

我正在尝试像这样重命名 db2 中的表

rename table schema1.mytable to schema2.mytable

但收到以下错误消息:
the name "mytable" has the wrong number of qualifiers.. SQLCODE=-108,SQLSTATE=42601

这里有什么问题......我使用的是 IBM publib 文档中的确切语法。

最佳答案

您不能更改给定对象的架构。你必须重新创建它。

有几种方法可以做到这一点:

  • 如果你只有一张表,你可以 exportimport/load 表。如果使用 IDX 格式,DDL 将包含在生成的文件中。如果使用其他格式,则表已创建。
  • 您可以使用以下命令重新创建表:
    Create table schema2.mytable like schema1.mytable
  • 可以使用 db2look 工具
  • 提取 DDL
  • 如果您要更改给定架构的架构名称,则可以使用 ADMIN_COPY_SCHEMA

  • 最后两个选项只创建表结构,您仍然需要导入数据。创建表后,您可以通过不同的方式插入数据:
  • 直接插入
    insert into schema2.mytable select * from schema1.mytable
  • 通过从游标加载
  • 通过加载或从文件导入(上一步导出的文件)

  • 问题是外交关系,因为它们必须被重建。

    最后,您可以创建一个 alias 。这更容易,而且您不必处理关系。

    关于db2 - 如何在 sql DB2 中重命名表/移动到不同的模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20004146/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com