加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle非空约束

发布时间:2020-12-12 14:37:08 所属栏目:百科 来源:网络整理
导读:一 约束的作用 1、定义规则 2、确保完整性 二 非空约束 1、在创建表时设置非空约束 CREATE TABLE table_name( column_name datatype NOT NULL,... ); SQL create table userinf_1 2 ( id number ( 6 , 0 ), 3 username varchar2 ( 20 ) not null , 4 userpwd

一 约束的作用

1、定义规则 2、确保完整性
二 非空约束 1、在创建表时设置非空约束 CREATE TABLE table_name( column_name datatype NOT NULL,... );
  1. SQL> create table userinf_1
  2. 2(id number(6,0),
  3. 3 username varchar2(20)notnull,
  4. 4 userpwd varchar2(20)notnull);
  5. 表已创建。
  6. SQL> desc userinf_1
  7. 名称是否为空?类型
  8. -----------------------------------------------------------------------------
  9. ID NUMBER(6)
  10. USERNAME NOT NULL VARCHAR2(20)
  11. USERPWD NOT NULL VARCHAR2(20)
  12. SQL> insert into userinf_1(id) values(1);
  13. insert into userinf_1(id) values(1)
  14. *
  15. 1行出现错误:
  16. ORA-01400:无法将 NULL 插入("SYSTEM"."USERINF_1"."USERNAME")
2、在修改表时添加非空约束 ALTER TABLE table_name MODIFY column_name datatype NOT NULL; SQL> alter table userinfo
  • 2 modify username varchar2(20)notnull;
  • alter table userinfo
  • *
  • 1行出现错误:
  • ORA-02296:无法启用(SYSTEM.)-找到空值
  • SQL>deletefrom userinfo;
  • 已删除3行。
  • SQL> alter table userinfo
  • 2 modify username varchar2(20)notnull;
  • 表已更改。
  • SQL> desc userinfo
  • 名称是否为空?类型
  • -----------------------------------------------------------------------------
  • ID NUMBER(6)
  • USERNAME NOT NULL VARCHAR2(20)
  • USERPWD VARCHAR2(20)
  • EMAIL VARCHAR2(30)
  • REGDATE DATE
  • 3、在修改表时去除非空约束 ALTER TABLE table_name MODIFY column_name datatype NULL; 2 modify username varchar2(20)null;
  • 表已更改。
  • SQL> desc userinfo
  • 名称是否为空?类型
  • -----------------------------------------------------------------------------
  • ID NUMBER(6)
  • USERNAME VARCHAR2(20)
  • USERPWD VARCHAR2(20)
  • EMAIL VARCHAR2(30)
  • REGDATE DATE
  • (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读