编写程序中遇到的一个奇怪问题(高手们都来看看啊)!!!!!!!!!!(在线等)
小弟写完程序后,发现了一个奇怪的问题,一个SQL语句比较大,在本机测试时只用2-3秒钟可以返回1900条数据,可是放到公司的服务器上运行时(相当外网的连接)竟然会到3分多钟,上次一测更到了6分钟。这种情况会有吗??/
还有一个问题,公司的服务器设定的是15秒钟查询返回,如果执行上面的这个问题第一次肯定会报错,而不改任何查询条件再次查询,只是时间稍长(但是也用不了3-6分钟),就可以返回结果,请问诸位这是怎么回事,是数据库的问题,还是我编写程序的问题啊????
[解决办法]
数据库或者网络问题
[解决办法]
会否是因为锁表的问题,你试下在表后加上(NOLOCK),不进行锁表查询。
如果你的SQL语句不复杂的话你试下对数据库的设置进行优化。
[解决办法]
本机2,3秒,服务器3分钟,
本机和服务器相差的也就是网络状况不同了
另外,看看你服务器上的表是否都建了索引
[解决办法]
数据库的导入,导出有时候会把索引丢失的
没有了索引那速度就直线下降了
[解决办法]
你公司的服务器是否与你的机同在一个网内?
[解决办法]
是不是并发的问题。
[解决办法]
你所讲的公司服务器,在你取数的时候有没其它人都在同时操作那台服务器的数据呢?
[解决办法]
你可以否将服务器里面的那个你用的DB,移到其它机上,然后你用那台机来做一次,看是否出现同样的问题。(先排除一下是否服务器的资源被其它用户占用了)
[解决办法]
用存储过程试试
[解决办法]
你用的是什么方式联数据库啊。
直接联的还是用的webservice啊。
你将服务器当本机用一下的情况又是怎么样呢??
我认为不可能是网络问题哦。应该是服务器的配置问题。