社区
图表区
帖子详情
net 2005自带水晶报表查询速度的问题
snfeng
2009-06-08 03:10:20
我使用水晶报表做了个成绩打印的系统 ,我按系进行打印,比如说有三个系 计算机系 数学系 中文系 在我机子上查询都比较快 但是放到服务器上后 ,只有计算机系比较快 ,其他两个系查询向当地慢,不知道什么原因,是不是缓存的问题,是不是计算机系的查询先放到缓存中了,请帮忙 谢谢!
...全文
95
11
打赏
收藏
net 2005自带水晶报表查询速度的问题
我使用水晶报表做了个成绩打印的系统 ,我按系进行打印,比如说有三个系 计算机系 数学系 中文系 在我机子上查询都比较快 但是放到服务器上后 ,只有计算机系比较快 ,其他两个系查询向当地慢,不知道什么原因,是不是缓存的问题,是不是计算机系的查询先放到缓存中了,请帮忙 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
阿泰
2009-06-10
打赏
举报
回复
[Quote=引用 7 楼 snfeng 的回复:]
Connection.Open();
adapter.Fill(ds, "DataTable1");
其他系在这两个位置比较慢
[/Quote]
这两个环节跟水晶报表还没发生关系呢
建议把Connection的打开放在一个公用的位置,不用每次都打开
adapter.Fill(ds, "DataTable1"); 这个的过程,貌似不能优化了。
tingbing
2009-06-10
打赏
举报
回复
怎么加时间点,是自己写程序,还是vs2005自带的功能,我怎么没有听说过.呵呵
snfeng
2009-06-10
打赏
举报
回复
Connection.Open();
adapter.Fill(ds, "DataTable1");
其他系在这两个位置比较慢
阿泰
2009-06-10
打赏
举报
回复
回8楼、10楼
Win程序下
System.Diagnostics.Debug.Write("时间点1:" + System.DateTime.Now);
这样在调试模式下的“输出”标签页上会显示出:
时间点1:2009-6-10 14:41:16
这个样子的时间点
通过这样设置多个时间点(时间点1,时间点2)的监控,判断出各过程耗费的时间。
Web程序下:
用Response.Write("时间点1:" + System.DateTime.Now);
xiaojin0710
2009-06-10
打赏
举报
回复
[Quote=引用 8 楼 tingbing 的回复:]
怎么加时间点,是自己写程序,还是vs2005自带的功能,我怎么没有听说过.呵呵
[/Quote]
同借台子问下啊,谢谢了
阿泰
2009-06-09
打赏
举报
回复
代码看上去没问题。
分别在
protected void Button1_Click(object sender, EventArgs e)
{
string Sqlstring = "Select Stu_Id,Stu_Name,Class_Id,Class_Name,depart_Id,Course_Name,mc,Grade From mc";
//这个位置继续下时间点
Connection.Open();
//这个位置继续下时间点
if (banjiDdl.SelectedValue == "全部班级") -----假如选择全部班级就是按系查询
{
Sqlstring = Sqlstring + " where Depart_Id='" + xibieDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
}
else ---------否则就是按班查询
{
Sqlstring = Sqlstring + " where Class_Id='" + banjiDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
}
// string Sqlstring = "Select * From Grade_View Where Class_Name ='" + banjiDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
SqlDataAdapter adapter = new SqlDataAdapter(Sqlstring, Connection);
//这个位置继续下时间点
DataSet1 ds = new DataSet1();------事先创建好的数据集(是不是问题出在这)
adapter.Fill(ds, "DataTable1");
//这个位置继续下时间点
if (ds.Tables[0].Rows.Count == 0)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", " <script lanuage=javascript>alert('此查询数据为空,请选其他查询方式!'); </script>");
}
//这个位置继续下时间点
bjcjReport.Load(Server.MapPath("bjcj.rpt")); -----水晶报表文件名为bjcj.rpt
//这个位置继续下时间点
bjcjReport.SetDataSource(ds);
//这个位置继续下时间点
CrystalReportViewer1.ReportSource = bjcjReport;
//这个位置继续下时间点
Connection.Close();
}
在上述位置处,记录时间点,看下哪个时候耗时最长
选用不同的系别时,哪个节点耗时最长
snfeng
2009-06-09
打赏
举报
回复
protected void Button1_Click(object sender, EventArgs e)
{
string Sqlstring = "Select Stu_Id,Stu_Name,Class_Id,Class_Name,depart_Id,Course_Name,mc,Grade From mc";
Connection.Open();
if (banjiDdl.SelectedValue == "全部班级") -----假如选择全部班级就是按系查询
{
Sqlstring = Sqlstring + " where Depart_Id='" + xibieDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
}
else ---------否则就是按班查询
{
Sqlstring = Sqlstring + " where Class_Id='" + banjiDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
}
// string Sqlstring = "Select * From Grade_View Where Class_Name ='" + banjiDdl.SelectedValue.Trim().ToString() + "' order by Stu_Id";
SqlDataAdapter adapter = new SqlDataAdapter(Sqlstring, Connection);
DataSet1 ds = new DataSet1();------事先创建好的数据集(是不是问题出在这)
adapter.Fill(ds, "DataTable1");
if (ds.Tables[0].Rows.Count == 0)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script lanuage=javascript>alert('此查询数据为空,请选其他查询方式!');</script>");
}
bjcjReport.Load(Server.MapPath("bjcj.rpt")); -----水晶报表文件名为bjcj.rpt
bjcjReport.SetDataSource(ds);
CrystalReportViewer1.ReportSource = bjcjReport;
Connection.Close();
}
谢谢!
阿泰
2009-06-09
打赏
举报
回复
1:贴代码出来看看吧
2:先查其他系,再查计算机系,看看其他的系是不是也快了,确定下是不是第一次查快(而不只是计算机系)
snfeng
2009-06-08
打赏
举报
回复
阿泰 请帮忙再看看 ,谢谢了 经常看你 的帖子
snfeng
2009-06-08
打赏
举报
回复
[Quote=引用 1 楼 babyt 的回复:]
WEB程序还是 win程序
水晶报表确实有缓存,但是还不至于影响那么大,是不是你的不同的系返回的数据量差别很大?
还有你的快和慢,你先查的哪个后查的哪个?
[/Quote]
是web程序,我先查的计算机系 后查的其他系,返回的数据量差别不大
阿泰
2009-06-08
打赏
举报
回复
WEB程序还是 win程序
水晶报表确实有缓存,但是还不至于影响那么大,是不是你的不同的系返回的数据量差别很大?
还有你的快和慢,你先查的哪个后查的哪个?
水晶报表
中文帮助手册
《
水晶报表
中文帮助手册》是一本专为使用
水晶报表
(Crystal Reports)的用户设计的指导性文献,以CHM电子书格式提供,便于用户在线查阅和离线学习。该手册全面覆盖了
水晶报表
的各项功能和操作技巧,是开发人员、数据...
C# de酒店管理SQL
2005
而C#则可以通过
水晶报表
或自定义控件来显示这些报表,为管理层提供决策支持。 总的来说,基于C#的酒店管理系统结合SQL Server
2005
,可以实现高效的数据管理和用户友好的界面,为酒店运营提供全方位的支持。在实际...
pb11.5框架 可以看看
它可能演示了如何使用.NET类库,如
水晶报表
、第三方控件等,增强PB应用的功能。 通过这些示例,开发者不仅可以学习到PB11.5的基本用法,还能深入了解如何利用其与.NET Framework的互操作性,提升应用程序的性能和...
编程词典销售分析系统.rar_his
4. **报表生成**:系统可能包含了报表生成的功能,这可能涉及到
水晶报表
(Crystal Reports)或其他报表工具,用于自定义报告模板,生成销售报告供管理层查阅。 5. **数据导入导出**:系统可能具备导入Excel或其他...
水晶报表
多表
查询
问题
(原创)
我还是个
水晶报表
新手,以后在做
水晶报表
过程中可能还会遇到很多
问题
,也需要大家的帮助,希欢迎大家提出意见,指导我进行改进。欢迎大家勇于探讨。也希望以后的学习过程中能够得到大家的帮助(附代码)。 在这里我...
图表区
4,818
社区成员
14,134
社区内容
发帖
与我相关
我的任务
图表区
.NET技术 图表区
复制链接
扫一扫
分享
社区描述
.NET技术 图表区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章