我想添加一个完整性约束,该约束只允许将数字数据添加到Unit_Price。
Create Table Invoice
(InvoiceID Varchar2(6) PRIMARY KEY NOT NULL,
Quantity number(10) NOT NULL,
Date_of_purchase Date NOT NULL,
Unit_Price number(5,2) CHECK (ISNUMERIC(Unit_Price)) NOT NULL,
Amount number(10) NOT NULL,
payment_method Varchar(18) CHECK (payment_method in ('Cash','Card','Paypal')) NOT NULL);
[另外,我在另一个表中有一个电子邮件列,如何使它如此,所以必须使用@符号。此外,如果他们不输入电子邮件,则默认应为“ [email protected]”?
首先,unit_price
是数字。无需检查是否为数字;数据类型可以解决这个问题。
电子邮件的基本定义是:
email varchar2(255) default '[email protected]' check (email like '%@%.%')
Here是db <>小提琴。
不过,我强烈建议您不要使用默认值。在这种情况下,NULL
更有意义。