关于连接数据库的问题 如果一个程序每两秒钟要执行一条sql server数据库命令的话,是每隔两秒钟连接数据库,执行T-sql语句,关闭连接比较好呢?还是从程序一运行开始就连接上,每隔两秒执行T-sql,直到程序退出前关闭连接好呢?主要是资源占用,执行效率,系统稳定性这几方面考虑。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sql server有线程池的,你就一直连接上,sql server会帮你去管理的,这个不要你操心 没必要频繁断开然后再连,而且2秒太短了,sqlserver缓冲池会管理 #1.数据库连接算是个比较大的消耗资源,占用内存,且SQL SERVER完成自行管理。#2.如果你这个程序只有1个,那么占用一个常连接问题不大;假如有成千上百个程序都在跑,那个数据库的连接资源就开始紧张了#3.对于这种情况,连接池技术相应而生,这个技术是客户端的缓存技术。举个例子:A进程在缓冲池占用了一个L1连接,SQL SERVER相应建立一个S1连接。A进程,执行完SQL后,释放L1,但这时S1,并没有释放。B进程,进到缓冲池,需要一个空闲连接,正好L1空闲,就分给了它,这时B进程,还是用S1连接来执行它的SQL的,所以S1连接没有被重建,节省了不少时间和资源。#4.当然了,S1重用时会有一个清理操作,再加上L1释放和重新分配的时间,会比常连接慢一点,但消耗不大。所以,有了连接池,SQL SERVER只要维护几百个连接,就可以供客户端几千个连接“同时”使用,何乐而不为?所以除了#2的那种情况,我建议使用完连接后,马上断开。 帮忙看看这个应该怎么加索引啊,因为是新手,弄了半天,都不出效果。 求语法、例子 在存储过程不能使用rand()吗 菜鸟求救 紧急求助,储存过程执行速度突然变的很慢! char 求一个算法啊 请详细介绍一下ADO2记录集,怎样使用它??? 几个数据表关系设定的问题,各位老大们帮忙呀。 我怎么就连接不上sql server呢??使用ado,具体请进............... sql server里如何获取系统当前的时间 sql server 2008用windows身份附加数据库出错5123
#2.如果你这个程序只有1个,那么占用一个常连接问题不大;假如有成千上百个程序都在跑,那个数据库的连接资源就开始紧张了
#3.对于这种情况,连接池技术相应而生,这个技术是客户端的缓存技术。举个例子:
A进程在缓冲池占用了一个L1连接,SQL SERVER相应建立一个S1连接。
A进程,执行完SQL后,释放L1,但这时S1,并没有释放。
B进程,进到缓冲池,需要一个空闲连接,正好L1空闲,就分给了它,这时B进程,还是用S1连接来执行它的SQL的,所以S1连接没有被重建,节省了不少时间和资源。
#4.当然了,S1重用时会有一个清理操作,再加上L1释放和重新分配的时间,会比常连接慢一点,但消耗不大。
所以,有了连接池,SQL SERVER只要维护几百个连接,就可以供客户端几千个连接“同时”使用,何乐而不为?所以除了#2的那种情况,我建议使用完连接后,马上断开。