有没有办法保存 ssis package/dtsx 文件中存在的所有查询?
Is there a way to save all queries present in a ssis package/dtsx file?
我需要 运行 对我的查询进行一些分析(特别是查找 ssis 调用的所有表)。
现在我正在打开每一个 ssis 包,其中的每一个步骤,并从中手动复制和粘贴表格。
正如您想象的那样,它非常耗时且令人麻木。
有没有办法自动导出所有查询?
顺便说一句,我正在使用 sql 服务器 2012
您可以为这个特定项目创建一个架构,然后将所有 SQL 存储在该架构的视图中...将有助于保持整洁并帮助解决此类问题。
检索查询不是一个简单的过程,您可以通过两种方式来实现它:
正在使用正则表达式分析 .dtsx 包 XML 内容
SSIS 包 (.dtsx) 是 XML 文件,您可以将这些文件作为文本文件读取并使用正则表达式检索表 (例如,您可以搜索所有以 SELECT, UPDATE, DELETE, DROP, ...
关键字开头的句子)
有一些问题要求从 .dtsx 文件中检索一些信息,您可以参考这些信息以获得一些想法:
使用 SQL 分析器
您可以在 SQL 服务器实例上创建并 运行 一个 SQL Profiler 跟踪,并过滤在执行 ssis 程序包时执行的所有 T-SQL 命令。可以在以下帖子中找到一些示例:
- How to capture queries, tables and fields using the SQL Server Profiler
- How to monitor just t-sql commands in SQL Profiler?
- SSIS OLE DB Source Editor Data Access Mode: “SQL command” vs “Table or view”
- Is there a way in SQL profiler to filter by INSERT statements?
- Filter Events in a Trace (SQL Server Profiler)
您还可以使用扩展事件(比分析器有更多选项)来监视服务器并收集 SQL 命令:
我需要 运行 对我的查询进行一些分析(特别是查找 ssis 调用的所有表)。 现在我正在打开每一个 ssis 包,其中的每一个步骤,并从中手动复制和粘贴表格。 正如您想象的那样,它非常耗时且令人麻木。
有没有办法自动导出所有查询?
顺便说一句,我正在使用 sql 服务器 2012
您可以为这个特定项目创建一个架构,然后将所有 SQL 存储在该架构的视图中...将有助于保持整洁并帮助解决此类问题。
检索查询不是一个简单的过程,您可以通过两种方式来实现它:
正在使用正则表达式分析 .dtsx 包 XML 内容
SSIS 包 (.dtsx) 是 XML 文件,您可以将这些文件作为文本文件读取并使用正则表达式检索表 (例如,您可以搜索所有以 SELECT, UPDATE, DELETE, DROP, ...
关键字开头的句子)
有一些问题要求从 .dtsx 文件中检索一些信息,您可以参考这些信息以获得一些想法:
使用 SQL 分析器
您可以在 SQL 服务器实例上创建并 运行 一个 SQL Profiler 跟踪,并过滤在执行 ssis 程序包时执行的所有 T-SQL 命令。可以在以下帖子中找到一些示例:
- How to capture queries, tables and fields using the SQL Server Profiler
- How to monitor just t-sql commands in SQL Profiler?
- SSIS OLE DB Source Editor Data Access Mode: “SQL command” vs “Table or view”
- Is there a way in SQL profiler to filter by INSERT statements?
- Filter Events in a Trace (SQL Server Profiler)
您还可以使用扩展事件(比分析器有更多选项)来监视服务器并收集 SQL 命令: