Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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
C# 如何确定SQL server或数据库是否存在_C#_Sql Server_Database_Database Connection - Fatal编程技术网

C# 如何确定SQL server或数据库是否存在

C# 如何确定SQL server或数据库是否存在,c#,sql-server,database,database-connection,C#,Sql Server,Database,Database Connection,我的数据库所有者对主数据库没有任何权限,我正在寻找一种方法来确定SQL Server服务器是否存在,以及该服务器上是否存在数据库。您可以使用它来管理SQL Server对象模型。首先让我们检查本地计算机上是否存在SQL Server实例 这可以通过SMO(和)来完成 然后,要检查所需数据库是否可用,请使用以下命令: 使用函数db_id返回数据库的id(如果存在),否则为null。下面是T-SQL示例: if (db_id('INVENTORY') is null) begin retur

我的数据库所有者对主数据库没有任何权限,我正在寻找一种方法来确定SQL Server服务器是否存在,以及该服务器上是否存在数据库。

您可以使用它来管理SQL Server对象模型。

首先让我们检查本地计算机上是否存在SQL Server实例

这可以通过SMO(和)来完成

然后,要检查所需数据库是否可用,请使用以下命令:

使用函数db_id返回数据库的id(如果存在),否则为null。下面是T-SQL示例:

if (db_id('INVENTORY') is null)
begin
    return 0
end
else
begin
    return 1
end

希望这能有所帮助。

这似乎是一个有效的问题,所以向上投票,但很高兴看到您已经尝试了什么。向下投票后,人们应该写下理由,这样我也可以找到缺点。我已经在现有的线程中看到了这个答案。这是一个较慢的过程,在查询服务器实例中花费的时间太多。实际上,在我的桌面应用程序场景中,我想测试每次启动桌面应用程序时,实例是否正在运行,数据库是否启动。大部分时间(90%)数据库都将启动。使用上述方法,查询服务器实例将花费一些额外的时间,这将使应用程序启动变慢。
if (db_id('INVENTORY') is null)
begin
    return 0
end
else
begin
    return 1
end