gpt4 book ai didi

SSIS - 如何在脚本任务中访问 RecordSet 变量

转载 作者:行者123 更新时间:2023-12-03 11:49:00 27 4
gpt4 key购买 nike

如何访问脚本任务中的 RecordSet 变量?

最佳答案

在脚本选项卡上,确保将变量放在 readonlyvariables 或 readwritevariables 文本框中。

这是一个简单的脚本,我用来将数据流中的错误(保存在 RecordSet 变量中)格式化为电子邮件正文。基本上我将记录集变量读入数据表并使用 for 循环逐行处理它。此任务完成后,我检查 uvErrorEmailNeeded 的值,以确定是否有任何内容可以使用条件流程流连接器发送电子邮件。您还需要在 vb 脚本中添加对 system.xml 的引用。这是在 SQL 2005 中。

Imports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
Imports System.Xml
Imports System.Data.OleDb


Public Class ScriptMain


Public Sub Main()


Dim oleDA As New OleDbDataAdapter
Dim dt As New DataTable
Dim col As DataColumn
Dim row As DataRow
Dim sMsg As String
Dim sHeader As String


oleDA.Fill(dt, Dts.Variables("uvErrorTable").Value)
If dt.Rows.Count > 0 Then
Dts.Variables("uvErrorEmailNeeded").Value = True
For Each col In dt.Columns
sHeader = sHeader & col.ColumnName & vbTab
Next
sHeader = sHeader & vbCrLf
For Each row In dt.Rows
For Each col In dt.Columns
sMsg = sMsg & row(col.Ordinal).ToString & vbTab
Next
sMsg = sMsg & vbCrLf
Next
Dts.Variables("uvMessageBody").Value = "Error task. Error list follows:" & vbCrLf & sHeader & sMsg & vbCrLf & vbCrLf
End If

Dts.TaskResult = Dts.Results.Success
End Sub

End Class

关于SSIS - 如何在脚本任务中访问 RecordSet 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2596992/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com