重命名DB2中的列 [英] Rename column in 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或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屋!