首页 新闻 会员 周边

有关数据库连接时间问题

0
[已解决问题] 解决于 2008-12-19 14:59

当前的.net应用程序要对数据库(主要是MSSQLSERVER2005)操作,程序会直接与数据库操作。也要通过执行存储过程 来与数据库操作。但是数据量很大,想想问问有关设置这个连接保持时间的问题。是不是通过改进程序端的在与数据库访问的数据量,再改进数据库端(存储过程),是不是还是得把连接的时间(SQLCommand的CommandTimeout)值设的大点呢?设多大为好?数据量可能会稍大。可能最小的会有几万条。好像相对于一些上十万条上百条的话,不算大。

问题:想道对于这样的大数据量的操作都要做些什么呢?包括程序端和数据库这端,当然还有连接的时间的大小的问题。谢谢。。

问题补充: 1楼说的好像不能这样做。因为我这样做的是从一个临时表往库里做更新(包括插入与修改)操作。还有好像不能换到你说的Oracle库。
二十二号同学的主页 二十二号同学 | 小虾三级 | 园豆:790
提问于:2008-12-12 11:30
< >
分享
最佳答案
0

最近在做的数据量也很大,人多的时候访问经常超时,没有办法,数据库方面该优化的都优化好,索引加好,约束做好,剩下的其实基本都是程序的问题.

我们每天都产生新表,每张表都是一千万以上的数据,但是取出来的时候,你可以按需来取,不必一次全都取出,这样就能快一些.

从一个临时表往库里做更新(包括插入与修改)操作,不用临时表,用SP做呢?

有所为,有所不为 | 小虾三级 |园豆:1200 | 2008-12-17 10:51
其他回答(1)
0

对于海量数据应该如何解决?   我看了许多贴子认为有下面两个方法:  
  方法一:  
  1) 把数据量大的表按星期或月份分开表存放,每个表的结构,索引,主键等一样,即是符合分区视图的创建  
  2) 在这些表中建立分区视图  
  3) 查询数据时对分区视图进行操作  
  方法二:  
  1) 建一个历史数据库(或历史数据表),用于存放历史数据,他们的一些索引等结构可以不一样,历史表偏重查询,更新操作较少,建立所有多考虑查询,而存放当前月数据的表要涉及到更新插入等操作,因此建立索引时要注意平衡  
  2) 当前月份如果结束了,则把数据全部导入到历史表中,并且清空当前表的数据  
  3) 如果要操作历史数据则要转到历史数据表中  

建议尝试用 ORACLE   数据库,再用上面方法,效果和性能会更好。 

sl2008 | 园豆:407 (菜鸟二级) | 2008-12-12 11:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册