VB6.0 在ADO Data控件中使用SQL语句进行数据库的查询(统计)时报错——实时错误
背景:数据库文件的名称是”教学管理.mdb”,其中有三个表:学生表、课程表和成绩表。学生表(学号,姓名,。。。)课程表(课程号,课程名,。。。)成绩表(学号,课程号,成绩...
背景:
数据库文件的名称是”教学管理.mdb”,其中有三个表:学生表、课程表和成绩表。
学生表(学号,姓名,。。。)课程表(课程号,课程名,。。。)成绩表(学号,课程号,成绩)
要求:
统计每个学生所修课程的最高成绩、最低成绩、平均成绩
做法:
(1) 设计窗体
一个adodc1控件,一个datagrid1控件,一个标签控件和一个按钮控件
(2) 修改属性
Adodc1控件的属性设置如下:
属性名 属性值 备注
ConnectionString Provide=…… 已连接到”教学管理.mdb”数据库
RecordSource Select * from 成绩表
Visible false 程序运行时不可见
Datagrid1控件的属性设置如下:
属性名 属性值 备注
DataSource Adodc1 已绑定到adodc1控件
Caption 成绩统计表
其它属性忽略
标签的Caption属性为:统计每个学生所修课程的最高成绩、最低成绩、平均成绩
按钮的Caption属性为:统计
(3) 编写代码
在按钮的单击事件中,添加以下代码:
Dim str as string
str=”select学生表.学号,学生表.姓名,max(成绩) as 最高成绩, min(成绩) as 最低成绩,avg(成绩) as 平均成绩from 成绩表,学生表 where 成绩表.学号=学生表.学号 group by学生表.学号”
adodc1.recordsource=str
adodc1.refresh
(4) 运行
报错:试图执行的查询中不包含作为合计函数一部分的特定表达式’姓名’
(5) 修改
当删除“学生表.姓名”后,程序正常运行。
(6) 问题
怎样在查询结果中既包含学号字段同时又包含姓名字段呢? 展开
数据库文件的名称是”教学管理.mdb”,其中有三个表:学生表、课程表和成绩表。
学生表(学号,姓名,。。。)课程表(课程号,课程名,。。。)成绩表(学号,课程号,成绩)
要求:
统计每个学生所修课程的最高成绩、最低成绩、平均成绩
做法:
(1) 设计窗体
一个adodc1控件,一个datagrid1控件,一个标签控件和一个按钮控件
(2) 修改属性
Adodc1控件的属性设置如下:
属性名 属性值 备注
ConnectionString Provide=…… 已连接到”教学管理.mdb”数据库
RecordSource Select * from 成绩表
Visible false 程序运行时不可见
Datagrid1控件的属性设置如下:
属性名 属性值 备注
DataSource Adodc1 已绑定到adodc1控件
Caption 成绩统计表
其它属性忽略
标签的Caption属性为:统计每个学生所修课程的最高成绩、最低成绩、平均成绩
按钮的Caption属性为:统计
(3) 编写代码
在按钮的单击事件中,添加以下代码:
Dim str as string
str=”select学生表.学号,学生表.姓名,max(成绩) as 最高成绩, min(成绩) as 最低成绩,avg(成绩) as 平均成绩from 成绩表,学生表 where 成绩表.学号=学生表.学号 group by学生表.学号”
adodc1.recordsource=str
adodc1.refresh
(4) 运行
报错:试图执行的查询中不包含作为合计函数一部分的特定表达式’姓名’
(5) 修改
当删除“学生表.姓名”后,程序正常运行。
(6) 问题
怎样在查询结果中既包含学号字段同时又包含姓名字段呢? 展开
展开全部
=学生表.学号 group by 学生表.学号,学生表.姓名"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询