bru*_*lin 4 db2 rename db2-luw
我试图在db2中重命名一个表,就像这样
rename table schema1.mytable to schema2.mytable
Run Code Online (Sandbox Code Playgroud)
但收到以下错误消息:
the name "mytable" has the wrong number of qualifiers.. SQLCODE=-108,SQLSTATE=42601
Run Code Online (Sandbox Code Playgroud)
这里有什么问题....我正在使用IBM publib文档中的确切语法.
您无法更改给定对象的架构.你必须重新创建它.
有几种方法可以做到这一点:
您可以使用以下方法重新创建表:
Create table schema2.mytable like schema1.mytable
您可以使用db2look工具提取DDL
最后两个选项仅创建表结构,您仍需要导入数据.创建表后,您可以通过不同的方式插入数据:
直接插入
insert into schema2.mytable select * from schema1.mytable
通过游标加载
问题是外交关系,因为它们必须重新创建.
最后,您可以创建别名.它更容易,你不必处理关系.
小智 7
您可以使用以下语句轻松重命名表:
RENAME TABLE SCHEMA.TABLENAME TO NEWTABLENAME;
Run Code Online (Sandbox Code Playgroud)