Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 一种从客户端应用程序频繁检查与MS SQL Server连接的廉价方法?_Sql Server_Client Server_Ping - Fatal编程技术网

Sql server 一种从客户端应用程序频繁检查与MS SQL Server连接的廉价方法?

Sql server 一种从客户端应用程序频繁检查与MS SQL Server连接的廉价方法?,sql-server,client-server,ping,Sql Server,Client Server,Ping,在相对较小的服务器-客户机环境(最多100个到数据库服务器的客户机连接)中,对于每个正在运行的客户机应用程序,检查其数据库连接是否处于活动状态的资源有效方式是什么 我在考虑从每个客户端应用程序每隔20秒执行SELECT 1 这足够好吗,还是有更聪明的东西 许多用户可以通过移动连接使用数据库,这可能会导致频繁的退出,因此我的想法是在客户端应用程序中指出此类退出,并在用户提交表单之前发出警告等。 我知道用户的理想选择是通过Citrix或MS终端服务解决方案远程运行应用程序客户端,但他们通常只有简单的

在相对较小的服务器-客户机环境(最多100个到数据库服务器的客户机连接)中,对于每个正在运行的客户机应用程序,检查其数据库连接是否处于活动状态的资源有效方式是什么

我在考虑从每个客户端应用程序每隔20秒执行
SELECT 1

这足够好吗,还是有更聪明的东西

许多用户可以通过移动连接使用数据库,这可能会导致频繁的退出,因此我的想法是在客户端应用程序中指出此类退出,并在用户提交表单之前发出警告等。
我知道用户的理想选择是通过Citrix或MS终端服务解决方案远程运行应用程序客户端,但他们通常只有简单的VPN,仅此而已。

既然没有SQL Server ping功能,我过去一直依赖SELECT语句。 我使用了SELECT@@SERVERNAME,它只返回一行,而且效率很高

或者有一个只包含一个项目的专用表并选择它


SqlConnection.State属性不可靠,因为它指示上次操作后的状态,因此如果服务器从那时起停止运行,它将为您提供不正确的状态。

选择1或
打印更有效。
可以发送

a:

什么是标签声明。或

--

什么是评论。 除了基本的“成功”代码外,它不返回任何输出
(解释为“命令已成功完成”。


编辑:如下面的评论所示,一个空格(
)就足够了。评论人直到现在才发布回复,所以我正在修改我的回复。

真有趣。考虑发送一个单一的空间,而类似的版本是<代码>:,我刚刚发现它工作得很好:)USR -单空间工作很好。我完全忘记了这种简化。请张贴答案,如果没有人给出更好的答案,我会接受。