初学oracle请问一下:我在一个表employee中写了一个字段employee_id我开始的时候写了一个非空约束,但后来我发现不能在那个字段处写非空约束,我要删掉那个非空约束,该怎么办

解决方案 »

  1.   

    drop table 后,重新跑下建表脚本
      

  2.   

    这方法太暴力了一点吧,呵呵
    有没有用一条语句能解决的
    比如删除主键约束: alter table 表名 drop constraint primary key;
      

  3.   

    先找出约束名称SELECT constraint_name, search_condition 
      FROM USER_CONSTRAINTS
     WHERE table_name=表名 and constraint_type='C';找到约束名后,可以用下面的命令删除约束ALTER TABLE 表名 DROP CONSTRAINT 约束名;
      

  4.   

    alter table 表名 drop constraint 约束名;--删除约束
      

  5.   

    alter table 表名 drop constraint 约束名;--删除约束
      

  6.   

    非空约束的处理不是LS几位的处理方法。
    应该是这样:
    alter table x modify column_name null;
    alter table x modify column_name not null;
      

  7.   


    是的呀,一路看下来,看得我胆战心惊的,怎么都在drop table啊
      

  8.   

    如果SQL语句不熟的话,可以在oem或通过数据库管理软件解决(如pl\sql、toad);
      

  9.   

    alter table 表名 drop constraints 约束名,
    或者楼主可以使用PL SQL工具,是图形化工具,里面可以看到约束,直接删除就可以了