Транзакция завершилась в триггере. Пакет был прерван (по ПРОЦЕДУРЕ) - PullRequest
0 голосов
/ 07 мая 2019

У меня на сервере работает 2 приложения, а именно: «производственные приложения» и «приложения dev» Нет никакой разницы между этими двумя приложениями в дополнение к их использованию, другое для разработки и другое для пользователей.

С «приложением dev» проблем нет, но проблема именно в «производственном приложении».

Следующее является одной из проблем: при попытке обновить данные появилась ошибка:

"Транзакция завершилась в триггере. Пакет был прерван" enter image description here

Несмотря на то, что нет никакой разницы в коде с «приложением dev»

Это мой код:

    ALTER PROCEDURE  [dbo].[uspFakultas] 

      @FakultasID varchar(50),
      @Dekan varchar(50),
      @KetuaProgram varchar(50),
      @WakilDekan1 nvarchar(50),
      @stat varchar(20)
    AS 
    SET NOCOUNT ON;
    if @stat = 'delete' and @FakultasID<>''
        begin
            DELETE FROM [dbo].[MasterFakultas]
                  WHERE [FakultasID] = @FakultasID
        end
    else
        begin   
        if @FakultasID='' 
            begin
                INSERT INTO [dbo].[MasterFakultas]
                           Some field .....
                     VALUES
                           some values.....
            end
        else 
            begin
                UPDATE [dbo].[MasterFakultas]
                   SET some data......

                 WHERE [FakultasID] = @FakultasID
            end
    end;

А это php код

$sqlstr=" exec [dbo].[uspfakultas] '$FakultasID','$Dekan','$NomorSK','$KetuaProgram','$WakilDekan1','$stat'";
$hasil=mssql_query( $sqlstr ) or die(mssql_get_last_message());
print $hasil;

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 07 мая 2019

Есть ли какие-либо репликации в таблицах, с которыми вы работаете в своей хранимой процедуре?

Я видел в некоторых приложениях триггеры репликации, вызывающие эту проблему.

...