3
RENAME COLUMN table-Name.simple-Column-Name TO simple-Column-Name

当我尝试重命名列时,我在所有列上都收到以下错误消息:

RENAME COLUMN EMP_NEW.EMPLOYEE_ID TO EMPLOYEEID
Error report -
ORA-00903: invalid table name
00903. 00000 -  "invalid table name"
*Cause:    
*Action:

以下是版本

Oracle Database 12c Release 12.1.0.1.0 - 64bit Production
PL/SQL Release 12.1.0.1.0 - Production
"CORE   12.1.0.1.0  Production"
TNS for IBM/AIX RISC System/6000: Version 12.1.0.1.0 - Production
NLSRTL Version 12.1.0.1.0 - Production

任何建议如何解决这个问题?(注意我已经从一些现有的表中创建了结构并且没有复制任何东西,即没有索引,没有任何约束,所以它很简单创建)

4

2 回答 2

4

正确的语法是

ALTER TABLE table_name RENAME COLUMN old_name TO new_name;

使用以下。但确保 EMP_NEW 表存在于您用于登录的架构中

ALTER TABLE EMP_NEW RENAME COLUMN EMPLOYEE_ID TO EMPLOYEEID;
于 2019-07-23T05:16:02.697 回答
1

编辑

不要使用这种语法,这是derby语法,使用 @Gro 答案 ( alter table)

确保表与用户不在不同的方案中,或使用方案名称。

还要确保没有任何引用该列的打开游标

限制:如果有任何打开的游标引用正在更改的列,则不允许使用 RENAME COLUMN 语句。

于 2019-07-23T05:25:00.073 回答