DTS-调试技巧
在我参与的一个遗留项目中,我们有几个通过 DTS 执行的处理。 DTS 并不是我在其鼎盛时期经常使用的东西……我当时还在上大学。
更具体地说,这些过程位于 ActiveX 代码块中——基本上是用于数据库的 VBScript。 确实很难调试。
无论如何,我想知道是否有任何过去或现在经验丰富的 DTS 专业人员可以提供有关如何处理调试、故障排除或以其他方式处理DTS 包开发< /强>。
这个问题被标记为社区wiki,我希望对所有类型的DTS包实现有通用的、有针对性的想法和方法。
In a legacy project that I'm on, we have several processing that are preformed via DTS. DTS is not something I worked with a lot back in its hey day.... I was in college.
More specificity, these process are in ActiveX code blocks -- which is basically VBScript for database. It is really hard to debug.
Anyway, I'm wondering if any past or present experienced DTS professionals can offer tips on how to deal with debugging, troubleshooting or otherwise dealing with DTS package development.
This this question is marked as community wiki, I'm hoping to have general and targeted ideas and methods for all types of DTS package implementations.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我有一个复杂的 DTS 包,它导入了一些数据,运行了一些批处理脚本,制作了一个 CSV 文件并通过 FTP 上传了结果输出。 有时 FTP 进程会失败。
我创建了一个“DTS LOG”表,在每个步骤之后,我只需添加一个 SQL 插入任务,并将时间戳和函数名称写入表中。 我做了一个视图来向我展示任何未完成的过程。
虽然这可能没有您需要的那么精细,但至少您会知道执行中问题出在哪里。
I had a complex DTS package that imported some data, ran some batch scripts, made a CSV file and uploaded the resulting output via FTP. Sometimes the FTP process would fail.
I created a "DTS LOG" table and after each step I simply added a SQL insert task and wrote a time stamp and function name into the table. I made a view to show me any process that did not complete.
While this may not be as granular as you need, but at least you'll know where the problem is in the execution.
在脚本部分,我使用 MsgBox 来显示“我到了这里”或“xfer 工作”或任何您想要指示发生的事情,而这些事情在运行时并不那么明显。
如果您正在测试流程的特定部分,您还可以使用条件语句分支到“结束”。
如果您一直在使用 DTS,但同时也在运行 SQL Server 2005 实例,您可能会发现是否无法将 DTS 包升级到 DTSX(SQL Server 集成服务)并在那里重新执行它们。 我知道这不是一个“技巧”,但是您在 VS2005 IDE 中工作,可以用 .NET 编写,还可以设置断点,这将使“DTS”世界中的生活变得更加轻松。
这里还有一些文章:
http://www.databasejournal.com/article.php/1503191
向下滚动,您将看到“SQL Server 2000 DTS”文章。
In the scripting portion, I have used the MsgBox to display "I got here" or "xfer worked" or whatever you want to indicate something happened which is not so obvious at run time.
You can also use conditional statements to branch off to an 'End' if you are testing a particular portion of the flow.
If you are stuck working with DTS, but are also running a SQL Server 2005 instance, you might see if you cant upgrade the DTS packages to DTSX (SQL Server Integration Services) and re-do them there. I know this isn't a 'trick' but you work in the VS2005 IDE, can write in .NET and also you can set break-points and will make life in 'DTS' world much easier.
There are also some articles here:
http://www.databasejournal.com/article.php/1503191
Scroll down and you will see the "SQL Server 2000 DTS" articles.