Maison >base de données >tutoriel mysql >Comment puis-je automatiser la récupération du numéro de version à partir des fichiers SSIS .dtsx ?

Comment puis-je automatiser la récupération du numéro de version à partir des fichiers SSIS .dtsx ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-18 03:36:11281parcourir

How Can I Automate Version Number Retrieval from SSIS .dtsx Files?

Automatisation de la récupération du numéro de version à partir des fichiers .Dtsx

Récupération de la version du package à partir des packages SSIS

Si vous avez besoin de lire la version informations dans un package SSIS, vous pouvez accéder à l'un des systèmes SSIS variables :

Variable Type Description
VersionBuild Int32 The package version
VersionComment String Comments about the package version
VersionGUID String The unique identifier of the version
VersionMajor Int32 The major version of the package
VersionMinor Int32 The minor version of the package

Recherche de la version du package SQL Server

Pour déterminer la version du package SQL Server stockée dans un fichier .dtsx :

  1. Ouvrez le fichier .dtsx sous forme de document texte (ou XML).
  2. Recherchez PackageFormatVersion propriété.

Extraction de valeurs à partir de fichiers .Dtsx

Utilisation de SQL Server

Reportez-vous aux ressources suivantes pour Requêtes SQL qui récupèrent des informations à partir de fichiers .dtsx stockés dans SQL Serveur :

  • [article Bill Fellows - Requête de package SSIS](https://billfellows.com/aa/sspackages/default.htm)
  • [Article Microsoft TechNet - Tout répertorier Packages SSIS stockés dans msdb base de données](https://technet.microsoft.com/en-us/library/ms165744.aspx)

Utiliser une approche programmatique

Utilisation d'expressions régulières

Le code suivant utilise Regex pour effectuer une boucle Fichiers .dtsx, extrayant les propriétés du package, y compris PackageFormatVersion :

Private Sub ReadPackagesInfo(ByVal strDirectory As String)
Dim regexPattern As String = "(?<=""PackageFormatVersion"">)(.*)(?=</DTS:Property>)"
...
Dim strPackageFormatVersion = Regex.Match(strContent, regexPattern, RegexOptions.Singleline).Value
...

Utilisation d'un XMLParser

Private Sub ReadPackagesInfoUsingXmlParser(ByVal strDirectory As String)
Dim ns As XNamespace = "www.microsoft.com/SqlServer/Dts"
...
If Not xml.Root Is Nothing AndAlso
    Not xml.Root.Descendants(ns + "Property").Attributes(ns + "Name") Is Nothing AndAlso
         xml.Root.Descendants(ns + "Property").Attributes(ns + "Name").Where(Function(x) x.Value = "PackageFormatVersion").Count > 0 Then
    strPackageFormatVersion = xml.Root.Descendants(ns + "Property").Attributes(ns + "Name").Where(Function(x) x.Value = "PackageFormatVersion").FirstOrDefault.Parent.Value
End If
...

Ressources supplémentaires

  • [Etudes SQL - Quelle version SQL est mon SSIS package ?](https://blog.sqlauthority.com/2010/09/23/sql-server-what-sql-version-is-my-ssis-package/)
  • [MSDN - Format du package Modifications dans SQL Server Denali](https://docs.microsoft.com/en-us/sql/integration-services/developers/package-format-changes-in-sql-server-denali)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn