Speichern einer SQL-Abfrage Ergebnis in eine XML-Datei ohne SSIS oder xp_cmdshell
Ich gesucht habe Tage an einer Lösung für das problem habe ich auch.
Ich habe eine SQL server-Abfrage, die produziert eine Ausgabe, die ich verlange in XML ist dies also die Abfrage:
SELECT FinishCode, reason, COUNT(reason) as Numbers
FROM [I3_Dialer].[dbo].[I3_UKPIPELINEWORKFLOW_CH0]
WHERE callplacedtime > (select cast(convert(varchar(10), getdate(), 110) as datetime)) and reason = 'Success'
GROUP BY reason, finishcode
ORDER BY Numbers
FOR XML PATH('FinishCode'), ROOT('UK_Products_Pipeline');
Dass die Ausgabe erzeugt eine XML, aber ich muss es als Datei gespeichert und für die Ausführung als job alle xx Minuten.
Alle Lösungen, die ich gefunden sofar BCP verwenden, mit der die Prozedur xp_cmdshell oder SSIS. Das einzige, was ich gefunden habe ist, dass auf dem SQL server BCP (zu meiner überraschung) und der server hat nicht genug Ressourcen, um SSIS installieren, auch nicht das SQL-admin aktivieren möchten oder zusätzliche software installieren.
Habe ich versucht, um einen Job ausführen, sondern die Datei, die es erzeugt enthält zu viel zusätzliche Informationen, die vermasselt die XML.
Alle Vorschläge willkommen, wie ich bin ein Neuling, wenn es um SQL.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nach langer Graben fand ich eine Lösung für mein problem:
Ich erstellt eine gespeicherte Prozedur wie diese:
dann in der Abfrage, die ich rufen Sie die gespeicherte Prozedur wie diese:
Diese ruft dann die gespeicherte Prozedur, und die Datei wird geschrieben, um Ihre
Könnten Sie versuchen, schreiben Sie eine kurze c# - Konsole-app, dies zu tun für Sie, dann stecken Sie es einfach in die Aufgabenplanung?
Die Konsole app wird die Abfrage auszuführen und das Ergebnis zu erhalten und dann schreiben Sie es zu einem konfigurierten Speicherort der Datei.