dtexec kehrt sofort ohne Meldungen zurück
On November 30, 2020 by adminIch versuche, einen Befehlszeilenaufruf an dtexec einzurichten, um Pakete mithilfe des Projektmodells zu validieren. Ich rufe auf dtexec wie folgt:
dtexec /val /proj my.ispac /pack my.dtsx /rep v
Obwohl die tatsächlichen Pfade zu ispac und dtsx länger sind. Wenn ich dies ausführe, sehe ich auf der Konsole nur Folgendes:
Microsoft (R) SQL Server Execute Package Utility Version 11.0.7001.0 for 32-bit Copyright (C) 2016 Microsoft. All rights reserved. Started: 10:40:01 AM PS D:\>
Das Ganze läuft in weniger als einer Sekunde ab, was mich glauben lässt, dass es nichts getan hat. Und es werden keinerlei Nachrichten ausgegeben, obwohl ich um ausführliche Berichterstattung gebeten habe.
Gibt es Ideen, wie dies funktioniert?
Antwort
Sie sind fast da, die von Ihnen verwendete Syntax ist korrekt, da Sie keine Abkürzung /Val
verwenden können. Aus der offiziellen Dokumentation geht Folgendes hervor:
/ Rep [orting] level [; event_guid_or_name [; event_guid_or_name […]]
/ Pack [age] Paketname: (Optional). Gibt das Paket an, das ausgeführt wird.
/ Rep [orting] level [; event_guid_or_name [; event_guid_or_name […]]
/ Proj [ect] ProjectFile: (Optional). Gibt das Projekt an, aus dem das ausgeführte Paket abgerufen werden soll.
Validierungs- und Ausführungsphase: Das Paket wird ausgeführt oder ohne Ausführung validiert, wenn / VALIDATE Die Option wurde angegeben.
Beachten Sie dies ebenfalls Fügen Sie beim Ausführen eines Pakets aus einem Projekt nicht die Paketerweiterung .dtsx
hinzu den folgenden Befehl:
dtexec /Proj my.ispac /Pack my /Rep V /VALIDATE
Kommentare
- Ok – das Lustige ist, dass keine Fehlermeldungen vorliegen werden ausgegeben. überhaupt nichts. Auch / val funktioniert einwandfrei. Sie ' benötigen nicht das ganze Wort oder die Großbuchstaben. Das eigentliche Problem ist das Hinzufügen des vollständigen Paketnamens einschließlich des dtsx Seltsam, dass keine Fehlermeldungen ausgegeben werden!
- @ user1443098 ok, ich habe die Anführungszeichen reduziert 🙂 Es sieht so aus, als hätten Sie das Problem bereits gelöst. Warum Sie nicht ' keine Antwort schreiben?
- Nun, ich habe ' keine wirkliche Antwort. Die Frage ist, warum es sofort ohne Nachrichten zurückkehrt. Ich weiß es immer noch nicht '. Ich denke , dass es etwas mit dem Paketnamen zu tun hat, aber warum ' keine Nachrichten ausgibt, ist mir ein Rätsel. Ich möchte Fehlermeldungen, wenn das Programm ' nicht mit den angegebenen Parametern ausgeführt werden kann. Trotzdem denke ich, dass ' eine Teilantwort ist.
Antwort
Wenn Sie dtexec mit den von mir verwendeten Parametern ausführen, können Sie die Dateierweiterung .dtsx nicht mit dem Paketnamen angeben. Dadurch wird das Programm ohne Fehlermeldungen sofort beendet.
Warum dtexec keine Fehlermeldung ausgibt, wie ich es für richtig halte, bleibt ein Rätsel.
Schreibe einen Kommentar