三九宝宝网备孕知识优生

SQL Server创建学号性别课程编号 check约束主键约束

03月23日 编辑 39baobao.com

use SM

go

1.

//创建SC表

if exists(select * from sysobjects where) //判断数据中是否有该表,若有先删除再重建

drop table sc

create table sc

(

StudentNo varchar(20) not null,

CourseNo varchar(20) not null,

StudentResult int not null

)

go

//添加约束

2.

alter table Student add constraint PK_stuno primary key(StudentNo)

3.

alter table Student add constraint CK_sex check (sex='男' or)

4.

alter table Course add constraint PK_courseno primary key(CourseNo)

5.

alter table Course add constraint UQ_coursename unique (CourseName)

6.

alter table sc add constraint FK_studentno foreign key(StudentNo) references Student(StudentNo)

7.

alter table sc add constraint FK_courseno foreign key(CourseNo) references Course(CourseNo)

8.

alter table sc add constraint PK_stu primary key(StudentNo,CourseNo)

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

//建立表:

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;

sql的表中的主码外码男女check

主码即主关键字。主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录。在两个表的关系中,主关键字用来在一个表中引用来自于另一个表中的特定记录。主关键字是一种唯一关键字,表定义的一部分。一个表不能有多个主关键字,并且主关键字的列不能包含空值。主关键字是可选的,并且可在 CREATE TABLE 或 ALTER TABLE 语句中定义。外码即外关键字。如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。男女check约束写法如下:create table 表名(id int primary key,sex varchar(2) check (sex in ('男','女')))...

在oracle中如何在指定条件下使用check约束例如:男生年龄小于

CREATE TABLE test_chk_case_when (

id int,

name varchar(10),

sex varchar(4),

age int

);

-- 男生年龄小于23岁,女生年龄小于21岁。

ALTER TABLE test_chk_case_when

ADD CONSTRAINT chk_test_sex_age

CHECK (

CASE WHEN AND age<23 THEN 1

WHEN AND age<21 THEN 1

ELSE 0 END = 1

);

SQL> INSERT INTO test_chk_case_when VALUES(1, '张三', '男', 22);

已创建 1 行。

SQL> INSERT INTO test_chk_case_when VALUES(2, '李四', '男', 23);

INSERT INTO test_chk_case_when VALUES(2, '李四', '男', 23)

*

ERROR 位于第 1 行:

ORA-02290: 违反检查约束条件 (TEST.CHK_TEST_SEX_AGE)

SQL> INSERT INTO test_chk_case_when VALUES(3, '王五', '女', 20);

已创建 1 行。

SQL> INSERT INTO test_chk_case_when VALUES(4, '赵六', '女', 21);

INSERT INTO test_chk_case_when VALUES(4, '赵六', '女', 21)

*

ERROR 位于第 1 行:

ORA-02290: 违反检查约束条件 (TEST.CHK_TEST_SEX_AGE)

推荐阅读
图文推荐