Ziel ist es, dass beim Insert in eine Tabelle ein Trigger ausgelöst wird, der dann ein Java-Programm startet. Dieses Programm bekommt die neu hinzugefügte Zeile übergeben und kopiert sie in eine andere Datenbank. Der Trigger sieht im Moment so aus:
Es wird ein java-Prozess beim insert gestartet, aber der kommt nicht zum Ende. Auch das insert wird nicht ausgeführt. Wenn ich den Befehl der ausgegeben wird per Hand in die Konsole eingebe funktioniert es aber. Weiß jemand warum?
Oder geht das ganze vielleicht sogar ohne das Java-Programm, also dass der SQL-Server die Daten selbst in die andere DB schreibt?
Code:
create trigger tr_EIC00P
on dbo.EIC00P
for insert
as
declare @icbeln varchar(11)
declare @icbepo varchar(3)
declare @befehl varchar(200)
begin
set @icbeln = (select icbeln from inserted)
set @icbepo = (select icbepo from inserted)
set @befehl = 'java -jar verbindung.jar '+@icbeln+' '+@icbepo;
print @befehl;
EXEC master.dbo.xp_cmdshell @befehl;
end
Es wird ein java-Prozess beim insert gestartet, aber der kommt nicht zum Ende. Auch das insert wird nicht ausgeführt. Wenn ich den Befehl der ausgegeben wird per Hand in die Konsole eingebe funktioniert es aber. Weiß jemand warum?
Oder geht das ganze vielleicht sogar ohne das Java-Programm, also dass der SQL-Server die Daten selbst in die andere DB schreibt?