Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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# TSQL:在执行sp_dropdistributor之前检查分发服务器是否存在_C#_.net_Sql Server_Tsql - Fatal编程技术网

C# TSQL:在执行sp_dropdistributor之前检查分发服务器是否存在

C# TSQL:在执行sp_dropdistributor之前检查分发服务器是否存在,c#,.net,sql-server,tsql,C#,.net,Sql Server,Tsql,在T-SQL中使用此命令删除分发服务器之前,是否有方法检查分发服务器是否存在 exec sp_dropdistributor @no_checks = 1, @ignore_distributor=1 大概是这样的: If (Distributor Exists) Then exec sp_dropdistributor @no_checks = 1, @ignore_distributor=1 我试图避免在执行该语句而分发服务器不存在时生成的错误: Msg 21043,16级,状态

在T-SQL中使用此命令删除分发服务器之前,是否有方法检查分发服务器是否存在

exec sp_dropdistributor @no_checks = 1, @ignore_distributor=1
大概是这样的:

If (Distributor Exists) Then 
   exec sp_dropdistributor @no_checks = 1, @ignore_distributor=1
我试图避免在执行该语句而分发服务器不存在时生成的错误:

Msg 21043,16级,状态1,程序sp_dropdistributor,第50行
未安装分配器


您可以使用
sp\u get\u distributor
过程:

    declare @temp table
    (
        is_installed int,
        distribution_server_name varchar(500),
        is_distribution_db_installed int,
        is_distribution_publisher int,
        has_remote_distribution_publisher int
    );

    insert @temp exec sp_get_distributor

    if((select is_installed from @temp) = 1)
    begin
      exec sp_dropdistributor @no_checks = 1, @ignore_distributor=1
    end

也许您可以使用select进行查询。通常我会执行一个更新查询并检查修改行的返回值。如果未修改任何行,则主键不存在,因此我执行Insert查询以添加新项。