ScriptBuffer クラス
スクリプト コンポーネント プロジェクトの BufferWrapper プロジェクト アイテム内で、スクリプト コンポーネントによって生成される入力および出力を表す読み取り専用クラスの基本クラスとして機能します。
名前空間: Microsoft.SqlServer.Dts.Pipeline
アセンブリ: Microsoft.SqlServer.TxScript (Microsoft.SqlServer.TxScript.dll)
構文
'宣言
Public Class ScriptBuffer
'使用
Dim instance As ScriptBuffer
public class ScriptBuffer
public ref class ScriptBuffer
type ScriptBuffer = class end
public class ScriptBuffer
説明
ScriptBuffer クラスは、スクリプト コンポーネント プロジェクトの BufferWrapper プロジェクト アイテム内で、スクリプト コンポーネントによって生成される入力および出力を表す読み取り専用クラスの基本クラスとして機能します。BufferWrapper プロジェクト アイテムのクラスは、データ フロー バッファを使用するための一連のメソッド、およびバッファ内の各列に対して型指定されたアクセサ プロパティを開発者に提供します。
スクリプト コンポーネントの開発者は、直接的には ScriptBuffer クラスを使用しませんが、コンポーネントの入力および出力を表す BufferWrapper プロジェクト アイテムの派生クラスを通じて、間接的に使用します。
詳細については、「スクリプト コンポーネントのコーディングおよびデバッグ」および「スクリプト コンポーネントのオブジェクト モデルについて」を参照してください。
使用例
次の「スクリプト コンポーネントによる非同期変換の作成」からのコード サンプルでは、AddRow、NextRow、EndOfRowset、および SetEndOfRowset を含む ScriptBuffer クラスのいくつかのメソッドおよびプロパティを示します。
Public Class ScriptMain
Inherits UserComponent
Private myRedmondAddressCount As Integer
Public Overrides Sub CreateNewOutputRows()
MySummaryOutputBuffer.AddRow()
End Sub
Public Overrides Sub MyAddressInput_ProcessInput(ByVal Buffer As MyAddressInputBuffer)
While Buffer.NextRow()
MyAddressInput_ProcessInputRow(Buffer)
End While
If Buffer.EndOfRowset Then
MyAddressOutputBuffer.SetEndOfRowset()
MySummaryOutputBuffer.MyRedmondCount = myRedmondAddressCount
MySummaryOutputBuffer.SetEndOfRowset()
End If
End Sub
Public Overrides Sub MyAddressInput_ProcessInputRow(ByVal Row As MyAddressInputBuffer)
With MyAddressOutputBuffer
.AddRow()
.AddressID = Row.AddressID
.City = Row.City
End With
If Row.City.ToUpper = "REDMOND" Then
myRedmondAddressCount += 1
End If
End Sub
End Class
継承階層
System. . :: . .Object
Microsoft.SqlServer.Dts.Pipeline..::..ScriptBuffer
スレッド セーフ
この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。