给你几个可能性吧:
首先你做一个调试方法:
做一下异常处理try catch finally
然后解决方案:
1、把conn.close()关一下,或conn.dispose()就行了。
2、dr要记得随时关了。
3、最好的方法是:
修改web.config,sql连接语句,改成如何:就是修改连接池的数量:
512什么的。
<add key= "dns " value= "Initial Catalog=ClfilmData Source=(local)User ID = sa Password=renEnlist=truePooling=trueMax Pool Size=300Min Pool Size=0Connection Lifetime=300user id=sapacket size=1000
"/>
数据库连接池,简称dbcp database connection pool存在意义:
数据库的连接是非常耗费系统资源的,一个应用通常都是需要与数据库打交道,也就需要经常连接数据库,这样导致浪费大量系统资源;
连接池的原理就是:我事先创建好几个数据库连接放着,当我的系统需要 *** 作数据库时就从连接池里直接拿连接,并将这个连接标记为 忙 ;用完后在放会池中,标记为 空闲;;;
当连接池里的连接都在被使用,如果此时还要连接,连接池就会在创建连接放到池里,,这些连接的数量,都是在配置文件里由你控制的
连接是一样的,只是执行的sql不一样,至于第二条,是可以不同的人同时连接数据库,不会因为数据库开和关受影响,至于你说的多个人同时用数据库做同一个update *** 作,这个不可能进行,其实那只是说你可以不用管别人调用数据库连接是否关了,你也可以调用数据库,和他没关系,这就是同时 *** 作互不影响,而不是你说的一个连接上有多个线程对数据库做了update *** 作,这个是不可能的总结,连接池的作用是1个以上的人调用数据库连接时不会因为其他人对数据库进行打开或关闭而影响其他人的连接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)