使用T-SQL语句按下表结构创建表(在创建表时定义约束)

来源:百度知道 编辑:UC知道 时间:2024/05/16 19:56:38
使用T-SQL语句按下表结构创建表(在创建表时定义约束)
表名:Grade
属性名称 属性描述 数据类型 字节数 空否 约束 备注
StudentNum 学号 char 9 否 主键
CourseID 课程号 int 4 否 主键
DailyGrade 平时成绩 decimal 5,1 不小于0且不大于20
PracticeGrade 实践成绩 decimal 5,1 不小于0且不大于30
TestGrade 期末成绩 decimal 5,1 不小于0且不大于50
Grade 总评 由平时成绩(20%)、实践成绩(30%)和期末成绩(50%)计算而来

create table grade
(
StudentNum char(9) not null primary key,
CourseID int not null unique,
DailyGrade decimal(5,1) check(decimal>=0 and decimal<=20),
PracticeGrade decimal(5,1) check(PracticeGrade>=0 and PracticeGrade<=30),
TestGrade decimal(5,1) check(TestGrade>=0 and TestGrade<=50)
)

对于总评,我不明白你的意思!
还有一点请注意,在一个表里只能创建一个主键,而你的题目出现两个主键,明显是错的,因此我把课程号设为唯一键!

create table Grade
(StudentNum char(9) not null,
CourseID int not null,
primary key(StudentNum,CourseID),
DailyGrade decimal(5,1) check(DailyGrade>=0 and DailyGrade<=20),
PracticeGrade decimal(5,1) check(PracticeGrade>=0 and PracticeGrade<=30),
TestGrade decimal(5,1) check(TestGrade>=0 and TestGrade<=50),
Grade as isnull(DailyGrade,0)*0.2+isnull(PracticeGrade,0)*0.3+isnull(TestGrade,0)*0.5
)

Grade 总评 由平时成绩(20%)、实践成绩(30%)和期末成绩(50%)计算而来
这一句怎么搞呀?????

可以设2个KEY