次の方法で共有


ScriptBuffer Class

スクリプト コンポーネント プロジェクトの BufferWrapper プロジェクト項目内で、スクリプト コンポーネントによって生成される入力および出力を表す読み取り専用クラスの基本クラスとして機能します。

名前空間: Microsoft.SqlServer.Dts.Pipeline
アセンブリ: Microsoft.SqlServer.TxScript (microsoft.sqlserver.txscript.dll 内)

構文

'宣言
<DefaultMemberAttribute("Item")> _
Public Class ScriptBuffer
[DefaultMemberAttribute("Item")] 
public class ScriptBuffer
[DefaultMemberAttribute(L"Item")] 
public ref class ScriptBuffer
/** @attribute DefaultMemberAttribute("Item") */ 
public class ScriptBuffer
DefaultMemberAttribute("Item") 
public class ScriptBuffer

解説

ScriptBuffer クラスは、スクリプト コンポーネント プロジェクトの BufferWrapper プロジェクト項目内で、スクリプト コンポーネントによって生成される入力および出力を表す読み取り専用クラスの基本クラスとして機能します。BufferWrapper プロジェクト項目のクラスは、データ フロー バッファを使用するための一連のメソッド、およびバッファ内の各列に対して型指定されたアクセサ プロパティを開発者に提供します。

スクリプト コンポーネントの開発者は、直接的には ScriptBuffer クラスを使用しませんが、コンポーネントの入力および出力を表す BufferWrapper プロジェクト項目の派生クラスを通じて、間接的に使用します。

詳細については、「スクリプト コンポーネントのコーディングおよびデバッグ」および「スクリプト コンポーネントのオブジェクト モデルについて」を参照してください。

継承階層

System.Object
  Microsoft.SqlServer.Dts.Pipeline.ScriptBuffer

使用例

次の「スクリプト コンポーネントによる非同期変換の作成」からのコード サンプルでは、AddRowNextRowEndOfRowset、および 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

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

ScriptBuffer Members
Microsoft.SqlServer.Dts.Pipeline Namespace