dtexec keert onmiddellijk terug zonder enige berichten
Geplaatst op november 30, 2020 door adminIk probeer een opdrachtregeloproep naar dtexec in te stellen om pakketten te valideren met behulp van het projectmodel. Ik roep dtexec als volgt:
dtexec /val /proj my.ispac /pack my.dtsx /rep v
Hoewel de echte paden naar de ispac en dtsx langer zijn. Als ik dit start, zie ik alleen op de console:
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:\>
Het hele ding loopt binnen een seconde, wat me doet geloven dat het niets deed. En er worden geen berichten verzonden, ook al heb ik om uitgebreide rapportage gevraagd.
Zijn er ideeën om dit te laten werken?
Antwoord
Je bent er bijna, de syntaxis die je gebruikt is correct, want je kunt geen afkorting gebruiken /Val
. Uit de officiële documentatie kun je zien dat:
/ Rep [orting] niveau [; event_guid_or_name [; event_guid_or_name […]]
/ Pack [age] Pakketnaam: (optioneel). Specificeert het pakket dat wordt uitgevoerd.
/ Rep [orting] niveau [; event_guid_or_name [; event_guid_or_name […]]
/ Proj [ect] ProjectFile: (optioneel). Specificeert het project waaruit het pakket dat wordt uitgevoerd moet worden opgehaald.
Validatie- en uitvoeringsfase: het pakket wordt uitgevoerd of gevalideerd zonder te worden uitgevoerd als de / VALIDATE optie is gespecificeerd.
Merk ook op dat bij het uitvoeren van een pakket vanuit een project “voeg dan de pakketextensie niet toe .dtsx
Probeer op basis daarvan het volgende commando:
dtexec /Proj my.ispac /Pack my /Rep V /VALIDATE
Reacties
- Ok – het grappige is dat er geen foutmeldingen zijn worden uitgegeven. helemaal niets. Ook / val werkt prima. je hebt ' niet het hele woord of de hoofdletters nodig. Het echte probleem is het toevoegen van de volledige pakketnaam inclusief de dtsx . Vreemd dat er echter geen foutmeldingen worden weergegeven!
- @ user1443098 ok ik heb de aanhalingstekens verkleind :). Het lijkt erop dat je het probleem al hebt opgelost. Waarom je ' geen antwoord schrijven?
- Nou, ik heb ' niet echt een antwoord. De vraag is waarom het onmiddellijk terugkomt zonder berichten? Ik weet het nog steeds niet '. Ik denk dat het iets te maken heeft met de pakketnaam, maar waarom het geen ' berichten verstuurt, is mij een raadsel. Ik wil foutmeldingen als het programma ' niet kan draaien met de opgegeven parameters. toch denk ik dat ' een gedeeltelijk antwoord is.
Answer
Als je dtexec uitvoert met de parameters die ik heb gebruikt, kun je de bestandsextensie .dtsx niet specificeren met de pakketnaam. Dat zorgt ervoor dat het programma onmiddellijk wordt afgesloten, zonder foutmeldingen.
Waarom dtexec geen foutmelding geeft, zoals ik denk dat het zou moeten, blijft een raadsel.
Geef een reactie