Kenneth Fisher a publié un article de blog sur la façon de déterminer quelle version SQL est mon package SSIS? en avril 2015.
Il contient un tableau des versions de SQL PackageFormatVersion
mappées à celles du package SSIS trouvé dans les métadonnées XML. Ceci est utile lorsque vous regardez un seul paquet individuel.
J'ai un dossier d'environ 100 .DTSX
packages SSIS dont j'ai besoin de savoir de quelle version SQL ils sont tous.
Comment puis-je déterminer, en vrac, ce que PackageFormatVersion
(c'est-à-dire la version SQL) pour plusieurs .DTSX
packages dans un dossier (système de fichiers)?
Le but final est de déterminer quelle est la bonne version TFS à obtenir et à implémenter pour mettre ces packages, car aucun système de contrôle de source n'existe actuellement. Le tableau présenté par Kenneth m'aidera à répondre à cette question, mais je dois d'abord confirmer quelles sont les versions SQL du package.
Supposons que je n'ai pas installé BIDS ni SSDT.
Supposons qu'une sortie souhaitée soit quelque chose comme ceci, où pipe désigne une nouvelle colonne:
PackageFilename | PackageFormatVersion
--------------------------------------
Package1.dtsx | 3
Package2.dtsx | 4
PowerShell, TSQL, les outils tiers pouvant analyser une structure de répertoires ou d'autres outils sont les bienvenus.
la source
Réponses:
Récupérer les informations dtsx par programme
Vous pouvez lire ma réponse détaillée sur StackoverFlow:
Application de démonstration
J'ai créé une application de démonstration pour réaliser cette procédure, vous pouvez la télécharger à partir du lien suivant:
J'ai également créé un nouveau référentiel Git pour cette application de démonstration
Capture d'écran de l'application
Récupérer dtsx PackageFormatVersion à l'aide de TSQL
J'ai écrit une requête SQL qui récupère les fichiers à partir d'un répertoire spécifique, filtre sur le fichier * .dtsx puis leur lit la
PackageFormatVersion
propriété.Le résultat ressemble
Références
la source