0

SQL Server 2000 のテーブルの 1 つで、「トリガーの挿入後」からサーバーでコンソール アプリケーションを実行しようとしました。次の行を使用しました。

    Declare @Seq_NO bigint ;

    SELECT @Seq_NO=i.Seq_No from inserted i
    declare @CmdSQL varchar(1000)
    set @CmdSQL = 'C:\temp\SendEmailConsole\SendScheduledEmail.exe' + cast(@Seq_NO as varchar(10))

    exec master..xp_cmdshell  @cmdSQL

この「C:\temp\SendEmailConsole」は、アプリケーションのテスト場所です。

2000年より新しいSQL Serverの他のバージョンでも機能します。これを使用してコマンドをアクティブにしました:

EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC master..sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE

私の最初の質問は、なぜmaster..sp_configure 'xp_cmdshell', 1SQL Server 2000 で動作しないのですか? そして、代替コマンドは何ですか?

そして2番目の問題は、「挿入後」トリガーの失敗は何ですか?

最後に、そのための代替ソリューションはありますか?

助けてくれてありがとう。

アップデート :

今、そのテーブルにレコードを挿入すると、サーバープロセスがロックされます!!!! 私の間違いは何ですか?

4

0 に答える 0