重命名 DB2 中的列 [英] Rename column in DB2

查看:50
本文介绍了重命名 DB2 中的列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试重命名一个数据已存在的表中的列.但下面是它抛出的错误.请指教.

I am trying to rename a column in one table where data already exists. But below is the error it is throwing.Please advice.

我尝试过的语法

ALTER TABLE TPR.PRODUCT_FEATURE RENAME COLUMN PRODUCT_ID TO SERVICE_ID

错误:

[错误] 脚本行:23-23 ------------无法处理对象类型COLUMN"上的 DROP、ALTER、TRANSFER OWNERSHIP、REVOKE 或 CREATE OR REPLACE,因为存在类型为PRIMARY KEY"的对象PRODUCT_FEATURE_X01",这取决于它. SQLCODE=-478, SQLSTATE=42893,驱动程序=3.67.28

[Error] Script lines: 23-23 ------------------------ DROP, ALTER, TRANSFER OWNERSHIP, REVOKE, or CREATE OR REPLACE on object type "COLUMN" cannot be processed because there is an object "PRODUCT_FEATURE_X01", of type "PRIMARY KEY", which depends on it.. SQLCODE=-478, SQLSTATE=42893, DRIVER=3.67.28

看起来,我需要放弃并重新创建是唯一的选择.请指教.

Looks me to, I need to drop and recreate is the only option. Please advice.

推荐答案

放弃约束:

ALTER TABLE TPR.PRODUCT_FEATURE 
    DROP CONSTRAINT PRODUCT_FEATURE_X01

然后改变你的桌子:

ALTER TABLE TPR.PRODUCT_FEATURE RENAME COLUMN PRODUCT_ID TO SERVICE_ID

然后添加新的约束:

ALTER TABLE TPR.PRODUCT_FEATURE
      ADD CONSTRAINT PRODUCT_FEATURE_X01
      PRIMARY KEY (insert,columns,here)

这篇关于重命名 DB2 中的列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆