Ich verwende Angel LMS und seine auf einer SQL Server-Plattform gebaut. Ich glaube, es ist 2005, aber nicht 100% sicher.Wie erstelle ich einen SQL Server-Agenten ohne Verwendung einer GUI?
Wie auch immer, vielleicht wird mein Pseudo-Code diese Antwort erhellen. Für Strings müssen auch einfache Anführungszeichen verwendet werden, und das verkettete Zeichen ist +.
Ich muss etwas 2-5 mal am Tag laufen lassen (die Frequenz ist noch nicht festgelegt, aber Sie bekommen den Punkt). Hier ist der Transaktionsblock/Pseudo-Code:
BEGIN TRANSACTION
BEGIN TRY
<select statement>
<update statement>
<delete statement>
<insert statement>
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
DECLARE @Msg NVARCHAR(MAX)
SELECT @Msg=ERROR_MESSAGE()
RAISERROR('Error Occured: %s', 20, 101,@msg) WITH LOG
END CATCH
Mein einziger Zugriff auf die Datenbank, wird ein Textfeld für SQL-Befehle ausführt. Ich kann Tabellen erstellen und löschen, Transaktionsblöcke ausführen und natürlich auswählen/einfügen/aktualisieren/löschen. Ich kann keine Befehle finden, um einen Agenten zu erstellen, sondern nur die Schritte, wenn Sie den Enterprise Manager oder was auch immer die GUI genannt wird.
Auch einige Hinweise, wie man den Zeitplan des Agenten zu manipulieren würde helfen. Wenn ich es teste, möchte ich es alle 15 Minuten laufen lassen.
EDIT
EXEC dbo.sp_add_job @ job_name = n'Test‘gab den Fehler
konnte nicht gespeicherte Prozedur finden 'dbo.sp_add_job'.
Nach Bearbeitung: versuchen EXEC msdb.dbo.sp_add_job @ job_name = N'test ' –
Die EXECUTE-Berechtigung wurde für das Objekt' sp_add_job ', Datenbank' msdb ', Schema' Dbo 'verweigert. Ich werde versuchen, Berechtigungen auf mich selbst zu erzwingen – CheeseConQueso