问题:
前段时间将VBS脚本中的ADO游标改成客户端游标, 执行起来发生问题,从数据库取数据写文件,写到160万左右,不停的重复写同一条记录写了若干个文件,连续几天都是如此, 检查过写文件源码,没有问题,猜想可能是内存泄漏导致的.
上次我把conn.CursorLocation = adUseServer, 结果执行存储过程就取不到数据了.

从网上找来的游标理解:
简单理解就是结果集保存的位置,对于客户端游标,结果集将会被吓载到本地,这样对于大数据量查询,会导致网络资源的严重占用,而服务器端游标直接将结果集保存到服务器上,可以大大提高页面的处理速度,但一般都不太使用后者(需要配置,而且涉及到安全方面的问题)

服务器端游标将结果集放在服务器的缓冲区内,客户端游标将结果集放在客户机的缓冲区内.  
  服务器端游标对数据的变化有很强的敏感性,客户端游标在处理记录集的速度上有优势,配合仅向前游标等使用可以提高程序的性能,并且少占网络资源,还可以支持较多的其他特性.但使用客户端游标在从服务器读取记录集时较占资源.这要看实际情况使用了

如果在你取到记录集以后,有人修改了数据库里的数据,使用服务器端游标加上动态游标就可以得到最新的数据,这时如果是客户端游标就无法察觉到数据的变化。要根据实际情况来使用。如果你的系统对数据要求即时性较高则可用服务器端游标,反之则使用客户端游标,提高程序性能。使用服务器端游标也可以调用存储过程的,只不过他无法返回记录条数(recordcount)要使用客户端游标就可以了。

相关文章:

  • 2021-07-16
  • 2021-05-02
  • 2022-01-07
  • 2022-01-09
  • 2021-06-21
  • 2021-06-26
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2018-02-08
  • 2021-05-22
  • 2022-12-23
  • 2021-11-04
  • 2021-11-24
  • 2022-01-29
  • 2022-12-23
相关资源
相似解决方案