一个程序里有多次读写数据库的地方
是程序进入时联接数据库,退出时断开好呢?
还是
在读写的地方临时联接好。
注意:是网络版

解决方案 »

  1.   

    楼上的错了~~~一般都是写在SUB MIAN里面的,所以一般都是一直开着~
      

  2.   

    又写错了~是SUB MAIN~NND最近我脑子坏了,请大家原谅~
      

  3.   

    我自己写了一个DLL是专门针对 sbaifei(微雨) 说的“通常都是需要时连,不需要就断开”结果VB真不争气,或者是我学艺不精,哎总是在SET RecortSet = RecortSet的时候出问题找 李洪根学.NET,标准答案出来了 帮忙,他这几天又不在,郁闷啊`~~~~~能找到几个象他学VB学的那么好的人,一个字 ~~~~《难》啊~~~哎~~~
      

  4.   

    sindyzhou(大胡子):说的还差不多,我认为
      

  5.   

    在VB中应该是进入时联接会好一些,因为联接过程需要时间的,所以尽量减少联接的次数;
    至于说常联着会占资源这是没错的,不过一般c/s不会有太多的客户端,100、200的不会有什么问题;
    而所谓的多用户冲突则不需要考虑太多
    因为联接不会引起冲突,冲突应该是在打开recordset、或执行SQL时才会发生
    这个不论是保持联接或是用完就断都是存在的
    只要代码写得好,recordset用完就放,不要用数据绑定的方式,基本上冲突是很少的另外.net里建议用完就放,其实是因为采用联接池的技术
    对于客户端虽然是断了,不过联接池里的联接依然还是挂在SQL server上依然占着联接资源,
    而客户端使用时则取联接池里已联接的东东,可以省去重新联接的时间
    当然联接池会有一定的处理机制在没人用时断掉的
    其基本原理还是保持联接,只不过是由联接池来保持而不是由client端所以好点代码应该是在recordset打开或执行sql语句判断联接是否已打开
    如果没有就打开
    并有机制判断过多少时间没用联接就自动关闭