帮忙看看这个sql的问题出在哪里

打开“考生文件夹\学生成绩管理.mdb”文件,请完成以下任务:1.在学生表中设置“学号”为主键,在课程表中设置“课程号”为主键,在成绩表中设置“学号”和“课程号”为主键。... 打开“考生文件夹\学生成绩管理.mdb”文件,请完成以下任务:
1.在学生表中设置“学号”为主键,在课程表中设置“课程号”为主键,在成绩表中设置“学号”和“课程号”为主键。
2.建立三表的关系,并实施参照完整性。
3.完成查询:找出所有选修"数学分析"学生的学号、姓名、和该门课程的成绩。

这是题目...

然后一共有三张表

然后我写的最后一个查询的sql

SELECT 学生.姓名, 学生.学号, 成绩.成绩
FROM 课程, 成绩, 学生
WHERE (((学生.学号)=[成绩].[学号]) AND ((课程.课程号)=2001));

然后显示不出来
求破!!!
展开
 我来答
zhl750501
2014-06-20 · TA获得超过650个赞
知道小有建树答主
回答量:698
采纳率:100%
帮助的人:455万
展开全部

1. 数据格式不对,课程号是文本不是数字

SELECT 学生.姓名, 学生.学号, 成绩.成绩

FROM 课程, 成绩, 学生

WHERE (((学生.学号)=[成绩].[学号]) AND ((课程.课程号)="2001"));


2.一般用建立关系的方法求结果,内连接查询速度快一些:

SELECT 学生.学号, 学生.姓名, 课程.课程名称, 成绩.成绩
FROM (成绩 INNER JOIN 课程 ON 成绩.课程号 = 课程.课程号) INNER JOIN 学生 ON 成绩.学号 = 学生.学号
WHERE 课程.课程名称="数学分析";
亭畔落日诱人醉
2014-06-21 · TA获得超过104个赞
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:102万
展开全部
你的成绩表没有设主键,要求是把学号和课程号设为主键,然后用学生表的学号关联到成绩表的学号,成绩表的课程号关联到课程表的课程号上,用外键。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d627950
2014-06-20
知道答主
回答量:2
采纳率:0%
帮助的人:2695
展开全部
改变变量的数据类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式