CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

难度高的问题(关于DataGrid以及DataSet和数据库的问题)

楼主scorpion007(沉默天蝎)2005-06-02 00:17:48 在 .NET技术 / ASP.NET 提问

废话少说,直接进入主题,大家的时间都比较忙吗!  
  1,我想实现以下功能,  
  我读取数据库里面的表中其中一个字段,以该字段的值为DataGrid的表格中一列,同时根据该字段的值  
  自动计算统计相应的结果。例如Sql   sum等等功能。  
  例如:(仓库ABC   的数字都是自动统计出来的,不是读取数据库的)  
  物品       仓库A总计     仓库B     仓库C    
      1             50                   50         50  
      2             100                 100     100  
      3             200                 200     200    
     
  以下是我的思路。  
  我搜索了msdn和csdn的相关资料  
  发现了一个方法,也就是DataTable的函数compute.  
  不知道是不是应该使用这种方法呢?  
  还是有其他方法?  
  各位高手可否给个思路或者MSDN相关资料啊?  
  不胜感激!  
  谢谢!  
  我会高分回赠的!  
  如果已经有人做出类似的,不妨告知  
  谢谢! 问题点数:100、回复次数:10Top

1 楼xzq686(★_瞬_★)回复于 2005-06-02 00:33:24 得分 5

你的表结构没有。可以根据表结构直接在SQL里面计算。也就是在SQL里面计算完生成你所要的记录集  
  :  
  物品       仓库A总计     仓库B     仓库C    
      1             50                   50         50  
      2             100                 100     100  
      3             200                 200     200Top

2 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2005-06-02 00:34:57 得分 0

不用劳驾写那么多代码。SQL服务器计算,直接查询结果。SQL可以在需求很复杂的时候仍然很简单清晰地表现计算,但是用编程代码就需要随着需求的变化大量修改。  
   
  假设“需要统计的物品”由prodSql(它应该是形如   select   id   from   product   where   ...的样子)来表示:  
   
  dim   sql="select   a.id   as   [物品编号],a.name   as   [品名规格],"+   _  
      "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='A')   as   [仓库A],"+   _  
      "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='B')   as   [仓库B],"+   _  
      "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='C')   as   [仓库C]   "+   _  
      "from   ("+prodSql+")   as   a   order   by   a.id"  
   
  然后用sql生成datatable或者datareader,再绑定。  
  Top

3 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2005-06-02 00:39:10 得分 90

不用劳驾写那么多代码。SQL服务器计算,直接查询结果。SQL可以在需求很复杂的时候仍然很简单清晰地表现计算,但是用编程代码就需要随着需求的变化大量修改。  
   
  假设“需要统计的物品”由prodSql(它应该是形如   select   id   from   product   where   ...的样子)来表示:  
   
  dim   sql="select   a.id   as   [物品编号],a.name   as   [品名规格],"+   _  
  "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='A')   as   [仓库A],"+   _  
  "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='B')   as   [仓库B],"+   _  
  "(select   sum(quanlity)   from   [库存]   where   pid=a.id   and   stk='C')   as   [仓库C]   "+   _  
  "from   ("+prodSql+")   as   a   order   by   a.id"  
   
  然后用sql生成datatable或者datareader,再绑定。  
   
   
  呵呵。大家写这个页面不要像csdn这样左右留这么多余白,应该自动使用窗口宽度。尤其是那个广告,应该自动收缩到左边窗口之外,待鼠标靠近了再自动像鬼一样伸出头来。Top

4 楼zeusvenus()回复于 2005-06-02 01:13:20 得分 0

用水晶报表,这些功能都已经集成实现了啊。Top

5 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2005-06-02 01:53:47 得分 0

交互界面也很需要呀!Top

6 楼scorpion007(沉默天蝎)回复于 2005-06-02 08:26:25 得分 0

待鼠标靠近了再自动像鬼一样伸出头来!!   =   =b  
  这里先谢谢sp1234()  
  我去试一下先!  
  看可否!Top

7 楼scorpion007(沉默天蝎)回复于 2005-06-02 10:31:35 得分 0

唉,现在才发现要求不是这样的。  
  郁闷  
  例如:  
  原来的要求是这样:  
  物品       仓库A总计     仓库B     仓库C    
      1             50                   50         50  
      2             100                 100     100  
      3             200                 200     200    
  现在改为这样:  
                  物品1总金额         物品2总金额       物品3总金额  
  仓库A             50                             50                       50  
  仓库B             100                           100                     100  
  仓库C             200                           200                       200    
   
  而表的设计是如下,  
  一个仓库表只记录仓库名加所在区域。注:所在区域还有一个值为空,该值意思代表全部区域!  
  而物品的总金额是另外一个明细表计算统计获得。2个表之间只有区域有关,其余无关。  
  这样该怎么写呢?  
   
  Top

8 楼brando_beat(Eの懒龙)回复于 2005-06-02 12:10:09 得分 5

upTop

9 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2005-06-02 13:23:35 得分 0

交叉表的查询你可以去   SQL   板块问问,直接得到自动产生宏并使用   EXEC   查询的结果。我上面只是说明程序中可以用SQL替代大段的代码。Top

10 楼zdliang(zdliang)回复于 2005-06-02 13:54:33 得分 0

数据库里面建立存储过程,建立临时表,把要查的结果插入到临时表里面  
  执行存储过程,返回的就是你需要的数据了,难吗??Top

相关问题

  • 关于数据库的更新(datagrid,dataset),高分...
  • 怎样实现DataSet与datagrid用代码连接数据库?
  • 更新dataset到数据库
  • dataset导入数据库
  • ###################DataSet访问数据库
  • 用DataSet更新数据库?100分
  • 用DataSet更新数据库?100分
  • 用DataSet更新数据库的问题
  • ★★★使用AdoHelper更新dataset到数据库
  • 如何将DataSet存入数据库

关键词

  • 物品
  • 数据库
  • 字段
  • 代码
  • 查询
  • 区域
  • 需求
  • 仓库
  • quanlity
  • prodsql

得分解答快速导航

  • 帖主:scorpion007
  • xzq686
  • sp1234
  • brando_beat

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo