我不擅长sql。我只是想和你解决我的疑惑。我可以给单列分配两个约束吗?我可以将唯一约束和非空约束设置为SQL中的同一列吗?
e.g
eno ename address mobileno
1 A US 9089877878
2 B UK NULL
3 C IND 9089877878
考虑上面的例子,我不想让用户为mobileno栏输入NULL或相同的值。我如何限制用户这样做?
感谢您的重要时间。
我不擅长sql。我只是想和你解决我的疑惑。我可以给单列分配两个约束吗?我可以将唯一约束和非空约束设置为SQL中的同一列吗?
e.g
eno ename address mobileno
1 A US 9089877878
2 B UK NULL
3 C IND 9089877878
考虑上面的例子,我不想让用户为mobileno栏输入NULL或相同的值。我如何限制用户这样做?
感谢您的重要时间。
或者您可以使用太多这种方式,
CREATE TABLE Persons
(
Id int NOT NULL UNIQUE,
一种解决方案是有两个数据不能复制以及数据不能为空。 可以使用此列作为主键。
CREATE TABLE table_name(eno NUMBER(3),ename CHAR(1),address CHAR(3),mobile_no NUMBER(10) PRIMARY KEY(mobile_no));
在Oracle中,我们可以将一个以上的主键是知道的,你的情况组合键,可以按以下方式:
CREATE TABLE table_name(eno NUMBER(3),ename CHAR(1),address CHAR(3),mobile_no NUMBER(10) PRIMARY KEY(eno,mobile_no));
是的,你可以
CREATE TABLE TABLE_NAME
(eno NUMBER
,ename VARCHAR2(100)
,address VARCHAR2(2000)
,mobileno NUMBER NOT NULL
,constraint table_name_mobile_UK UNIQUE (mobileno)
);
是的,这是可能的。尝试一下。 – 2012-11-30 05:20:04