MS SQL Server 2000

Ich möchte in einer geschriebenen Prozedur ein externes Programm aufrufen und Daten aus einer temporären Tabelle, die mit der prozedur erstellt wurde in das Tool (externe Programm) laden.
Geht das und wenn ja, wie?
Thomas K.

Es gibt (mindestens) zwei verschiedenartige Lösungsansätze: In der einen Version kannst Du das externe Programm als COM-Objekt verwenden und verwendest die Prozeduren sp_OACreate usw., um mit diesen Objekten zu arbeiten. Für die zweite Version definierst Du dir mit sp_addmessage eine eigene Message mit der With-Log-Option, erstellst einen Job, der das externe Programm ausführt und diesem bsp. den Tabellennamen als Parameter übergibt und erstellst mit sp_add_alert eine Warnung, welche die Message-Nummer mit den Job verknüpft.

Damit erzeugt die Prozedur am Ende mit RaisError einen solchen ‚benutzerdefinierten Fehler‘ und übergibt den Tabellennamen. Die Warnung registriert den Eintrag im EventLog und führt - mit sysadmin-Rechten - den Job aus, der Job kann Sql und / oder ein externes Programm ausführen.


Gruß, Jürgen Auer