• oracle加入not null约束


    在创建表时。为列加入not null约束,形式例如以下:
    column_name data_type
    [constraint constraint_name] not null
    当中,constraint constraint_name 表示为约束指定名称。
    也能够为已创建的表中加入not null约束,这时就须要使用alter table... modify语句。形式例如以下:
    alter table table_name modify column_name [constraint constraint_name] not null;


    删除not null约束
    假设须要删除表中的裂伤的not null约束,依旧是使用alter table...modify语句,形式例如以下:
    alter table table_name modify column_name null;


    详细的操作例如以下:
    SQL> create table person(
      2  pid number(4) not null,
      3  pname varchar2(20),
      4  psex char(2)
      5  );
    表已创建。


    SQL> desc person;
     名称                                      是否为空? 类型
     ----------------------------------------- -------- -------------------
     PID                                       NOT NULL NUMBER(4)
     PNAME                                              VARCHAR2(20)
     PSEX                                               CHAR(2)
    SQL> alter table person modify pname not null;
    表已更改。


    SQL> desc person;
     名称                                      是否为空?

    类型
     ----------------------------------------- -------- ------------------
     PID                                       NOT NULL NUMBER(4)
     PNAME                                     NOT NULL VARCHAR2(20)
     PSEX                                               CHAR(2)
    SQL> insert into person values(1,'aaa','女');
    已创建 1 行。
    SQL> insert into person values(1,'aaa',null);
    已创建 1 行。


    SQL> insert into person values(1,null,null);
    insert into person values(1,null,null)                           *
    第 1 行出现错误:
    ORA-01400: 无法将 NULL 插入 ("SYSTEM"."PERSON"."PNAME")
    SQL> alter table person modify pname null;
    表已更改。


    SQL> desc person;
     名称                                      是否为空? 类型
     ----------------------------------------- -------- ------------------
     PID                                       NOT NULL NUMBER(4)
     PNAME                                              VARCHAR2(20)
     PSEX                                               CHAR(2)
    SQL> insert into person values(1,null,null);
    已创建 1 行。
    SQL>

  • 相关阅读:
    [LeetCode] 55. Jump Game 跳跃游戏
    [LeetCode] 163. Missing Ranges 缺失区间
    [LeetCode] 228. Summary Ranges 总结区间
    获取当时时间和日期
    响应式布局设备分界点
    html5shiv.js分析-读源码之javascript系列
    建站模板开源代码
    js 调试问题
    transform使用参考指南
    浏览器版本过低
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6753583.html
Copyright © 2020-2023  润新知