C# SELECT 子句中包含一个保留字,拼写错误或丢失的参数,或标点符号不正确
strSql="selectstudent.snoas学号,student.snameas姓名,course.cnameas课程,sc.grateas成绩";strSql...
strSql = "select student.sno as 学号, student.sname as 姓名,course.cname as 课程,sc.grate as 成绩";
strSql += "from(student inner join sc on student.sno=sc.sno) inner join course on sc.cno=course.cno";
adap.SelectCommand = new OleDbCommand(strSql,conn );
adap.Fill(ds, "sc"); 展开
strSql += "from(student inner join sc on student.sno=sc.sno) inner join course on sc.cno=course.cno";
adap.SelectCommand = new OleDbCommand(strSql,conn );
adap.Fill(ds, "sc"); 展开
4个回答
展开全部
你注意看,拼好的strSql中,as 成绩与后面的from之间是没有空格的,也就是as 成绩from xxx,这样当然不行,改成as 成绩 "或者" from都可以。
这个语句也可以写作
strSql="select a.sno as 学号,a.sname as 姓名,c.cname as 课程,b.grate as 成绩 from student a,sc b,course c where a.sno=b.sno and b.cno=c.cno";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(student inner join sc on student.sno=sc.sno)
该为
student inner join sc on student.sno=sc.sno
试试看。
sc 是表名,不是缩写,对吗?
该为
student inner join sc on student.sno=sc.sno
试试看。
sc 是表名,不是缩写,对吗?
追问
sc是表名,但是把括号去了也不对啊,还是提示那个错误啊。。麻烦你再看一下。。thank you
追答
也许是全角,半角错误,查查你的每个逗号都是半角的逗号,不是全角的逗号。如果还不行试试把 as 部分去掉。
从你贴出的图片看不出from前面有没有空格。你自己看看是不是那部分空格丢掉了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-22
展开全部
很简单的一个联合查询,为什么非要搞得这么复杂?
strSql = "select student.sno as 学号, student.sname as 姓名,course.cname as 课程,sc.grate as 成绩";/*不变*/
strSql += " from student ,sc,course where student.sno=sc.sno and sc.cno=course.cno";/*稍有变动 form 前加了一个空格,from student ,sc,course 表名后可以加别名,不加也可以,最后的 sc.cno=course.cno 的sc.cno 确定不是 sc.sno*/
有问题欢迎提问,满意请采纳!
strSql = "select student.sno as 学号, student.sname as 姓名,course.cname as 课程,sc.grate as 成绩";/*不变*/
strSql += " from student ,sc,course where student.sno=sc.sno and sc.cno=course.cno";/*稍有变动 form 前加了一个空格,from student ,sc,course 表名后可以加别名,不加也可以,最后的 sc.cno=course.cno 的sc.cno 确定不是 sc.sno*/
有问题欢迎提问,满意请采纳!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询