SQL语句建表,虽然这个好像蛮简单,但有人可以告诉我怎么写嘛?就是它设置谁为主键要怎么写,还有取值范围要怎么写

我只知道
Create Table CJB
后面那个那些限制语句我就不会了,设置谁为主键以及成绩范围数值取值咋弄呀

img

这个就是创建CJB表,包含 学号 课程号 成绩 字段,设置学号+课程号为主键,,设置成绩约束为0-100的整数,课程号关联到KCB的课程号字段,学号关联到XSB的学号字段
CREATE TABLE CJB (
  学号 INT NOT NULL,
  课程号 INT NOT NULL,
  成绩 INT CHECK (成绩 BETWEEN 0 AND 100),
  PRIMARY KEY (学号, 课程号),
  FOREIGN KEY (学号) REFERENCES XSB(学号),
  FOREIGN KEY (课程号) REFERENCES KCB(课程号)
);

下面是个例子
create table student(
id int not null primary key auto_increment,
name varchar(32) not null,
sex varchar(8) default('男'), #设置默认值
age int not null check (age between 10 and 50), #设置取值范围
class_id int not null references class(id),
stu_num varchar(32),
constraint stu_u unique(stu_num)
);

参考如下:

CREATE TABLE `CJB` (
  `sId` int(15) NOT NULL COMMENT '学号',
  `cNo` int(15) NOT NULL COMMENT '课程号',
  `score` DECIMAL(4,2) DEFAULT '0' COMMENT '成绩' CHECK (score >= 0 AND score <= 100),
  PRIMARY KEY (`sId`, `cNo`)
);