2016-07-30 15 views
0
USE [dbname] 
    GO 
    SET NOCOUNT ON 
    GO 
    ALTER TRIGGER [dbo].[my_trigger] 
    ON [dbo].[Table_1] 
    AFTER INSERT, UPDATE, DELETE 
    AS 
    EXEC msdb.dbo.sp_send_dbmail 
      @recipients = '[email protected]', 
      @profile_name = 'PQM', 
      @subject = 'Data Inserted', 
      @body = 'Hi Data has been inserted'; 
    GO 

このコードは実行され、SQL Server管理スタジオまたはVBAコードを使用して挿入するとメールがトリガされます。しかし、私がSASサーバーの終わりから挿入すると、メールはトリガーされず、どちらも起動されません。私は、SQLの終わりにトリガを無効にするとSASからの挿入中にSQLトリガが起動しない

SASは

proc sql noprint; 
connect to odbc as sql1(datasrc= PQMDB USER= 'XXXX' PASSWORD = 'XXXX'); 
create table tr as select * 
from connection to sql1 
    (insert into dbname.dbo.Table_1 values('abc1'); 
disconnect from sql1; 
quit; 

コーディングこのコードは、罰金を実行します。

+0

細かく今トリガーが起動され、あなたが同じデータベースに接続しているあなたは確かにいますか?そして、別のもの - トリガーを有効にして2番目のケースに行が挿入されていますか? – OzrenTkalcecKrznaric

答えて

0

は、SASの終わりにchnageしていたし、< connectionNameの>で「()を実行使用し、それが助けとSQLが

+1

他の構文も実行されていて驚いていますが、SASのWORK.TRテーブルはどのように見えますか? – Tom

関連する問題