SQL2000,在一个表里,除了主键之外,如何设置另一个字段除了等于NULL能重复,等于别的值时不能重复

RT
2024-12-17 12:38:53
推荐回答(2个)
回答1:

如果是要对某一列增加 UNIQUE 约束,可以通过 MODIFY 的方式处理。
SQL> ALTER TABLE test_sub MODIFY value UNIQUE;
表已更改。

如果是对多个列增加 UNIQUE 约束,通过 新增一个 UNIQUE 的约束实现。
SQL> CREATE TABLE test_unique(
2 id INT,
3 name VARCHAR(10),
4 value VARCHAR(10)
5 );
表已创建。

SQL> ALTER TABLE test_unique
2 ADD CONSTRAINTS t_unique
3 UNIQUE (name, value);
表已更改。

回答2:

试试在程序里判断吧。
在进行插入操作之前,先用SELECT语句查询判断是否在表中以及存在这个值,如果存在并且非空,则程序拒绝向下面执行。