检测对SSIS包的更改

检测对SSIS包的更改,ssis,Ssis,社区问题。。。 是否有人知道在SQL Server 2012中检测SSIS包的更改 具体来说,在构建中,我们使用DTUTIL将更改部署到生产环境中。但如果我们可以使用触发器之类的东西将此更改记录到数据库表中,那就太好了 但是,如果我们能够看到包何时更新,那么即使是在某个地方的系统表上进行查询也会很有用 任何帮助都将不胜感激 Paul对于您正在寻找的基本系统表查询,您可以尝试-注意,您的表名称可能不同(请参阅关于sysssipackage(folders)的问答注释)。我可以设想使用CreateD

社区问题。。。 是否有人知道在SQL Server 2012中检测SSIS包的更改

具体来说,在构建中,我们使用DTUTIL将更改部署到生产环境中。但如果我们可以使用触发器之类的东西将此更改记录到数据库表中,那就太好了

但是,如果我们能够看到包何时更新,那么即使是在某个地方的系统表上进行查询也会很有用

任何帮助都将不胜感激


Paul

对于您正在寻找的基本系统表查询,您可以尝试-注意,您的表名称可能不同(请参阅关于
sysssipackage(folders)
的问答注释)。我可以设想使用
CreateDate
Version
PackageSize
字段

此外,安迪·伦纳德(Andy Leonard)在博客中介绍了他创建的一个名为SSIS目录比较的新工具,该工具可能会有所帮助

(为了坚持SO精神,这里是来自上面链接的SQL)


对于您正在寻找的基本系统表查询,您可以尝试-注意,您的表名称可能不同(请参阅关于
sysssispackage(folders)
)的Q&A注释)。我可以设想使用
CreateDate
Version
PackageSize
字段

此外,安迪·伦纳德(Andy Leonard)在博客中介绍了他创建的一个名为SSIS目录比较的新工具,该工具可能会有所帮助

(为了坚持SO精神,这里是来自上面链接的SQL)


为什么不使用构建来记录更改?为什么不使用构建来记录更改?感谢脚本。在使用SQL Server 2012时,我必须对其进行修改。但希望我能让它为我工作。我会查看你提到的博客。是的,我也不得不修改:将
msdb.dbo.sysdtspackages90
切换到
msdb.dbo.sysssipackages
msdb.dbo.sysdtspackagefolders90
切换到
msdb.dbo.sysssipackagefolders
。祝你好运谢谢你的产品介绍!您可以在上了解有关SSIS目录比较的更多信息。感谢提供脚本。在使用SQL Server 2012时,我必须对其进行修改。但希望我能让它为我工作。我会查看你提到的博客。是的,我也不得不修改:将
msdb.dbo.sysdtspackages90
切换到
msdb.dbo.sysssipackages
msdb.dbo.sysdtspackagefolders90
切换到
msdb.dbo.sysssipackagefolders
。祝你好运谢谢你的产品介绍!有关SSIS目录比较的详细信息,请访问。
-- List all SSIS packages stored in msdb database. 
SELECT PCK.name AS PackageName 
      ,PCK.[description] AS [Description] 
      ,FLD.foldername AS FolderName 
      ,CASE PCK.packagetype 
            WHEN 0 THEN 'Default client' 
            WHEN 1 THEN 'I/O Wizard' 
            WHEN 2 THEN 'DTS Designer' 
            WHEN 3 THEN 'Replication' 
            WHEN 5 THEN 'SSIS Designer' 
            WHEN 6 THEN 'Maintenance Plan' 
            ELSE 'Unknown' END AS PackageTye 
      ,LG.name AS OwnerName 
      ,PCK.isencrypted AS IsEncrypted 
      ,PCK.createdate AS CreateDate 
      ,CONVERT(varchar(10), vermajor) 
       + '.' + CONVERT(varchar(10), verminor) 
       + '.' + CONVERT(varchar(10), verbuild) AS Version 
      ,PCK.vercomments AS VersionComment 
      ,DATALENGTH(PCK.packagedata) AS PackageSize 
FROM msdb.dbo.sysdtspackages90 AS PCK 
     INNER JOIN msdb.dbo.sysdtspackagefolders90 AS FLD 
         ON PCK.folderid = FLD.folderid 
     INNER JOIN sys.syslogins AS LG 
         ON PCK.ownersid = LG.sid 
ORDER BY PCK.name;