Chinaunix首页 | 论坛 | 博客
  • 博客访问: 353078
  • 博文数量: 88
  • 博客积分: 1673
  • 博客等级: 上尉
  • 技术积分: 934
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-20 13:51
文章分类

全部博文(88)

文章存档

2016年(1)

2015年(4)

2014年(3)

2013年(7)

2012年(11)

2011年(1)

2009年(61)

我的朋友

分类: Mysql/postgreSQL

2009-07-09 17:43:05

好久都没有看数据库,对建表有些生疏了。所以在这儿写写.

学生表(Student),课程表(Course),选课表(SC);

CREATE TABLE Student(

Sno char(7) PRIMARY KEY,

Sname char(10) NOT NULL,

Ssex char(2) CHECK(Ssex='男' OR Ssex='女'),

Sage tinyint CHECK(Sage >=15 AND Sage <=45),

Sdept char(20) DEFAULT '计算机系'

check:限制列的取值范围,default:给定列的默认值。

CREATE TABLE Course(

Cno char(10) NOTNULL,

Cname char(20) NOT NULL,

Ccredit tinyint CHECK(Ccredit >0),

Semester tinyint CHECK(Semester >0),

period int CHECK (period >0),

PRIMARY KEY(Cno)

CREATE TABLE SC(

Sno char(7) NOT NULL,

Cno char(10) NOTNULL,

Grade tinyint CHECK(Grade >=0 and Grade<=100),

PRIMARY KEY(Cno,Cno),

FOREIGN KEY(Sno) REFERENCES Student (Sno),

FOREIGN KEY(Cno) REFERENCES Course (Cno),

一个好的建表,有时会运用到完整性约束:NOT NULL,DEFAULT,UNIQUE,CHECK,PRIMARY KEY,FOREIGN KEY.

阅读(658) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~