成绩表和课程表是什么关系
❶ 某学校教学管理数据库jxgl.dbc中有三个表:学生表,课程表和成绩表,内容如下: 学生表:
(1)创建学生表、课程表和成绩表。具体要求:学生表中学号为主索引,出生日期默认值为1988-09-01;课程表中课程号为主索引,学分不能为空;成绩表中学号是外索引与学生表建立关系,课程号是外索引与课程表建立关系,成绩的要求是在0-100之间。
createtable 学生表
(学号intnotnullprimarykey,
姓名varchar(30)notnull,
性别varchar(4)notnull,
出生日期datetimenotnulldefault 1988-09-01
)
go
createtable 课程表
(课程号char(6)notnullprimarykey,
课程名varchar(30)notnull,
学分char(10)notnull
)
go
createtable 成绩表
(学号 学生表(学号),
课程号char(6) 课程表(课程号),
成绩 tinyintconstraint 成绩_ckcheck (成绩>=0 and 成绩<=100 )
)
(2)通过insert into命令向各表中输入记录(按照所给表的内容)
insert into 学生表values (10001,'张娟娟','女','1987-09-01')
insert into 学生表values (10002,'李斌','男','1988-03-01')
insert into 学生表values (10003,'王亮晶','女','1986-05-04')
insert into 学生表values (10004,'成果果','女')
insert into 课程表values ('K01','VFP程序设计','3.5')
insert into 课程表values ('K02','计算机文化基础','2')
insert into 成绩表values (10001,'K01 ','85')
insert into 成绩表values (10001,'K02 ','90')
insert into 成绩表values (10002,'K01 ','88')
insert into 成绩表values (10002,'K02 ','92')
insert into 成绩表values (10003,'K01 ','90')
insert into 成绩表values (10003,'K02 ','91')
insert into 成绩表values (10004,'K01 ','76')
insert into 成绩表values (10004,'K02 ','87')
(3)查询“VFP程序设计”课程的学号和成绩并按降序输出。
select 课程表.课程名,成绩表.学号,成绩表.成绩from 成绩表
join 课程表on 成绩表.课程号=课程表.课程号
where 课程表.课程名='VFP程序设计'
orderby 成绩表.成绩desc
(4)查询“成果果”的学号和成绩。
select 学生表.姓名,成绩表.学号,成绩表.成绩from 成绩表
join 学生表on 成绩表.学号=学生表.学号
where 学生表.姓名='成果果'
(5)查询“张娟娟”的学号和出生日期。
select 学号,姓名,出生日期from 学生表where 姓名='张娟娟'
(6)查询课程号为“K01”的成绩。
select 课程号,成绩from 成绩表where 课程号='K01'
(7)查询“王亮晶”的“计算机文化基础”成绩。
select 学生表.姓名,课程表.课程名,成绩表.成绩from 成绩表
join 课程表on 成绩表.课程号=课程表.课程号
join 学生表on 学生表.学号=成绩表.学号
where 课程表.课程名='计算机文化基础'and 学生表.姓名='王亮晶'
❷ 主键和外键约束的问题。有三个表,成绩表,课程表和成绩表。外键是某个表的主键吗。
你这里的课程编号就是课程号吧。
学号是学生表的主键、课程编号是课程表的主键回、学号答和课程号是成绩表的主键,学号是成绩表的外键,课程号是成绩表的外键。
学号是成绩表的外键,成绩表的学号的有效取值是学生表里的学号决定的,而外键通常是另外一个表的主键,课程号以此类推即可。
❸ 对于给定的数据表(教师表,学生表,课程表,成绩表),如何设置他们
在数据库工具选项来卡的源关系窗口中创建关系。
在设计选项卡中出现显示表窗口,双击教师表,学生表,课程表和成绩表,将它们添加到关系窗口中;
选择任意两个字段,出现编辑关系窗口,即可设置他们之间的关系。
关系类型有一对一,一对多和多对多。
学生表和成绩表是一对多
教师表和学生表是多对多
课程表和学生表是一对多
以上答案仅供参考
❹ 使用SQI语句创建三张表(学生表,课程表和成绩表)字段分别是(学号,姓名,年龄,性别,系部,课程号
1、select 姓名 from 学生表 where 系别 = '计算机系'; 2、select 学号 from 学生选课专表 where 成绩 < 60 ; 3、select 学号,成绩 from 学生选课表 where 课程属号=1; 4、select 学生表.姓名,学生选课表.课程号,学生选课表.成绩 from 学生表,学生选课表 where 学生表.学号 = 学生选课表.学号; 5、select 姓名,年龄,性别 from 学生表 where 年龄 > (select 年龄 from 学生表 where name = '李明');
❺ 数据库多表查询,学生表,课程表,成绩表
直接将三表关联查询就可以了
select b.姓名,c.课程,a.成绩
from 成绩表 a,学生表 b,课程表 c
where a.学生学号 = b.学号 and a.课程编号 = c.编号 and a.成绩 < 60
❻ 为课程表和学生成绩表设计数据库应用程序
这点是创建表,还是设计什么?说清楚点!才能帮你噢!
❼ 根据学生表和课程表与成绩登记表的关系来做一个成绩登记表用SQL环境下完成。
--1.
createtablescs
(snointnotnull,
cnointnotnull,
scoreint)
--2.
altertablescsadddtdatetime;
--3
altertablescsaddconstraintpk-scprimarykey(sno,cno);
❽ 已知三个关系模式(学生表,课程表,成绩表)用SQL语句实现以下内容
CREATE TABLE 选课表
(学号 CHAR(8) REFERENCES 学生表(学号),
课程编号 CHAR(6) REFERENCES 课程表(课程编号),
成绩 smallint)
GO
INSERT INTO 学生表 VALUES('20100101','李丹','女','1993-6-6','管理系')
GO
SELECT 学号,姓名,所在系
FROM 学生表
GO
SELECT 学生表.学号,姓名
FROM 学生表 JOIN 选课表 ON 学生表.学号=选课表.学号
WHERE 课程编号='A01-02'
GO
SELECT *
FROM 学生表
WHERE 姓名 LIKE '[赵李张]%'
GO
SELECT 课程名称,COUNT(*) AS 选修总人数
INTO 修课统计
FROM 课程表 JOIN 选课表 ON 课程表.课程编号=选课表.课程编号
GROUP BY 课程名称
❾ SQL命令 “学生”数据库中有 “学生表”、“课程表”和 “成绩表”。 “学生表”中包含学号、姓名
1、首先在电脑上打开数据库软件。然后附加有学生表和成绩表的数据库。
❿ 在“成绩表”、“学生表”和“课程表”中,找出“课程编号”为“001”的课程成绩在[80,90]之间的学生的姓
“成绩表”、“学生表”和“课程表” 这三个表是什么关系