如果要给一列重命名,而这一列是表的主键,怎样才能实现?我用了一下语句
 alter table emp rename id to empno;
系统提示:
 SQL> alter table emp rename id to empno;
alter table emp rename id to empno
                       *
ERROR 位于第 1 行:
ORA-14155: PARTITION 或 SUBPARTITION 关键字丢失
请问这是怎么回事?先行谢过啦

解决方案 »

  1.   

    alter table TEST rename column id to TEST; 
      

  2.   

         
    Oracle中修改表中字段名 
      更改字段名:
    --modify 不能用于更改字段名
    --alter table sm_emp modify address sm_address;err!解决方法:
    create table ut as select name,tel,id empid from sm_emp;--将sm_emp中数据取出并存到新建的表ut中,并将字段id改名为empid
    drop table sm_emp;
    rename ut to sm_emp; 
     
     
     
     
      

  3.   

    10i你的写法不可用的.
    可以用以下方式:
    alter table tt add col1 varchar2(100); 
    update tt set col1=colOld; 
    alter table drop colOld; 
      

  4.   


    同意,不过最后一句有点问题,应该加上 column alter table drop column colOld;
      

  5.   


    ORACLE 允许用alter 删除主键吗?
      

  6.   

    可以删除的,不过记得在新列上加上主键.alter table emp add constraint pk_emp primary key(empno)
      

  7.   

    alter table test rename column id to empno;