DB2表中的NULL检查和插入规则是什么?


DB2中的NULL定义为空值,是一个未知值。如果要限制任何列中的NULL值,则应在CREATE TABLE中使用“NOT NULL”参数定义该列。

“NOT NULL”将强制用户为该列输入值。但是,如果不想为此列提供任何值,也可以使用“WITH DEFAULT”参数,这将允许DB2在用户未为此“NOT NULL”列提供任何值的情况下放置默认值。

例如,如果有一个INVOICE_ID列,它不能为NULL,并且还希望DB2在用户未为此列提供任何值的情况下在此列中插入空格,则将如下定义该列:

CREATE TABLE ORDERS
   (ORDER_ID CHAR(15) NOT NULL,
   ORDER_DATE DATE,
   INVOICE_ID CHAR(15), NOT NULL WITH DEFAULT
   ORDER_TOTAL DECIMAL(9,2),
   TRANSACTION_ID CHAR(15),
   PRIMARY KEY(ORDER_ID),
IN DB4ES01;

INVOICE_ID列的数据类型为CHAR,DB2为CHAR取的默认值为空格。因此,在上述情况下,已将INVOICE_ID列定义为NOT NULL,并且当未为此列提供显式值时,它将采用空格作为默认值。

更新于:2020年9月14日

481 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告