牛人,帮拖啊!!!问了很多人都不会! 给你一个思路:(1)、使用视图把数据表转换成你在DataGridView中显示的格式。(2)、把(1)中的视图作为数据源绑定给DataGridView。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 declare @temp nvarchar(4000)set @temp=''Select @temp=@temp+','+quotename(课程名)+'=max(case when 课程名='+quotename(课程名,'''')+' then 成绩 else 0 end)'from tb group by 课程名exec('select 专业,班级,学号'+@temp+' from tb group by 专业,班级,学号') 看你上面的那个表,设计的大大的有问题,完全可以设计成两个表:一个学生信息表 ,一个成绩表,用学号去关联你上面那个设计不仅出现了大量的冗余数据,还让你自己走入死胡同了........你上面那个是用SQL能写出来的.........到SQL区找写SQL牛X的人吧 这个数据库是sql2000的,数据库里的成绩表,我是按另一个页面的格式插入的,所以就变成上面那样的格式了,因为老师把这个系统的界面都给了我们,我们就按他的去插入了,现在最搞不明白的是,这个系统有个界面专门负责打印成绩的,上面有个combobox1负责让你选择专业,combobox2负责让你选择班级,下边就一个datagridview,再一个打印button,datagridview要按上边的格式输出,因为专业不同,课程是不同的,所以每次combobox1专业的变化,datagridview的列都会发生变化,例如选择了专业信管,datagridview的列就要有他的所有课程:专业 班级 学号 c++ 编译原理 操作系统 ,如果专业是临床麻醉学,就要这样:专业 班级 学号 解剖学 生理学 人体形态学,不知道这样表达大家明不明白,难道每个专业都要建个表吗?有50多个专业。所以不知道如何处理,我的想法是先selcet出来,根据这样的格式处理,但又不如何实现这样的格式,如果把专业里的全部课程读到datagridview的每个列,又不知道如何把学生的成绩放到适合的列,才学了一个学期数据库和ado。net,就要我们搞个学生系统,实现n多功能,又无人帮很是郁闷,各位大哥只要有什么想法提指点下啊,我去尝试啊,不胜感激啊 首先从数据库设计来说,你这个表不符合数据库三范式规范,而后来想对数据进行统计变得异常复杂。如果非将就你现在的数据表,不能用DATAGRID数据绑定,只可以:1、让数据库直接返回操作结果; (以课程名做查询条件)2、查询到数据表的结果后, 让C#组织成那样的表结构,再到数据显示控件; DateTime.Now.Day < 下一个月的5日 关于UserControl 数据库中如何把2个字段结合起来设置主键? FillEllipse画出来的圆为什么不圆呢,右边和下边有塌陷的感觉 如何将excel数据高效率导入oracle?在线等! 关于接口多态问题,请进。 别人 用c语言,c++写的程序,请问我怎么能在c#里面调用 关于用socket模拟http post提交表单数据? winform 中combox如何添加2个字段? 我的数据库怎么连不上?这是什么问题?问题小小,难死我了! TabControl的问题 c# combox 左对齐
declare @temp nvarchar(4000)
set @temp=''
Select @temp=@temp+','+quotename(课程名)+'=max(case when 课程名='+quotename(课程名,'''')+' then 成绩 else 0 end)'
from tb group by 课程名
exec('select 专业,班级,学号'+@temp+' from tb group by 专业,班级,学号')
2、查询到数据表的结果后, 让C#组织成那样的表结构,再到数据显示控件;