ORACLE 数据库 default on null 意思

在用PLSQL设置列属性时有个 ON NULL属性,一直不太理解,找了许多资料后大概记录下心得:

为字段设置 on null 属性,  如果给字段赋值null的值,表中存储的时候会记录为 设置的 默认值

如:

--创建个测试表TESTQ2 ,其中id字段有on null 属性

create table TESTQ2
(
  id VARCHAR2(36) default on null SYS_GUID() not null
);

--插入一个null的id值

INSERT INTO TESTQ2(ID)
VALUES(NULL)

--查询发现id值不为null,而是设置的默认值SYS_GUID()

SELECT ID FROM TESTQ2

 

参考资料

https://docs.oracle.com/database/121/SQLRF/statements_7002.htm#SQLRF01402

 

你可能感兴趣的:(ORACLE)