数据库表有个字段表示性别,如何在企业管理器里面约束值只能取“男”和“女”?

来源:百度知道 编辑:UC知道 时间:2024/09/21 04:27:09
我用的是sql server 2000

可以添加约束
ALTER TABLE 数据库表 WITH NOCHECK
ADD CONSTRAINT xxx_check CHECK (有个字段 in ('男','女'))

//建立表:
create table test (
uname varchar(20) primary key,
birthday datetime,
sex char(2) check (sex='男' or sex = '女')
);

insert into test values ('a','2008-08-08', 'dd');

//将报出一下异常;

INSERT 语句与 COLUMN CHECK 约束 'CK__test__sex__33D4B598' 冲突。
该冲突发生于数据库 'pubs',表 'test', column 'sex'。
语句已终止。

//下面语句慢走sex的约束.
insert into test values ('a','2008-08-08', '男');

select * from test;

在数据库中添加约束或者在页面显示时使用视图显示。

加 Check 约束
例子
create table 职工

(
职工号 char(4) ,
性别 char(2),
constraint CK_性别 check(性别 in('男','女'))
)

一般做法是取是否,程序内部设定转换