求救用什么代码可以检测到连接到数据库的基本一个表有多少个?
因为我想知道我在连接sql server时之前究竟有没有人已经在连接了?
UP...
不知道,如果你如果是自己设计程序,在连接之前,写一个记录,断开后再销去记录就可以了.!!!
是否使用连接池?
目前.NET的连接方式是离线方式,使用连接池这样你可以最少的占用系统资源,知道有多少人连接,没什么必要嘛,你主要是控制连接完毕后关系连接就可以.如果你想的话你可以建立一个登录表,里面记录用户状态,连接时先取这个表看有多少个人在使用数据库,在程序退出时设置连接状态,不过有个问题就是如果出现非法关机就不能够得到正确的状态,但这种概率是比较低的,所以不考虑也可以
up
sp_who即可!
sp_who提供关于当前 Microsoft® SQL Server™ 用户和进程的信息。可以筛选返回的信息,以便只返回那些不是空闲的进程。
语法
sp_who [[@login_name =] login]
参数
[@login_name =] login
可能sql server或者oracle或者access没有提供这种功能。
建议楼主可以使用一个线程池,在数据库服务器这边统一管理。所有客户的连接数据库必须经过线程池。这样的话就可以控制它的连接了。
不过这样做的难度系数不小。
有个比较死的方法,在数据库一张表中来记录登陆的情况,只要连接上了,就向该表写记录。退出就做其他的标志。这样也可达到目的。
sp_who 指的是当前谁在线
SELECT GETDATE() AS Todays Date and Time,
@@CONNECTIONS AS Login Attempts
@@CONNECTIONS
返回自上次启动 Microsoft® SQL Server™ 以来连接或试图连接的次数。