Share via


IDTSBuffer100 Interface

Represents an in-memory, two-dimensional storage object that contains rows and columns.

Namespace:  Microsoft.SqlServer.Dts.Pipeline.Wrapper
Assembly:  Microsoft.SqlServer.DTSPipelineWrap (in Microsoft.SqlServer.DTSPipelineWrap.dll)

Syntax

'Declaration
<GuidAttribute("62F50D4D-3EA5-4859-A606-95CA9FDDC356")> _
<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)> _
Public Interface IDTSBuffer100
'Usage
Dim instance As IDTSBuffer100
[GuidAttribute("62F50D4D-3EA5-4859-A606-95CA9FDDC356")]
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]
public interface IDTSBuffer100
[GuidAttribute(L"62F50D4D-3EA5-4859-A606-95CA9FDDC356")]
[InterfaceTypeAttribute(ComInterfaceType::InterfaceIsIUnknown)]
public interface class IDTSBuffer100
[<GuidAttribute("62F50D4D-3EA5-4859-A606-95CA9FDDC356")>]
[<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)>]
type IDTSBuffer100 =  interface end
public interface IDTSBuffer100

The IDTSBuffer100 type exposes the following members.

Methods

  Name Description
Public method AddBLOBData Appends byte data to a column in an IDTSBuffer100.
Public method AddRow Adds a new row to an IDTSBuffer100 object.
Public method Clone Creates a private copy of an IDTSBuffer100 object.
Public method DirectErrorRow Sends a row in an IDTSBuffer100 object to an IDTSOutput100 whose IsErrorOut property is true.
Public method DirectRow Sends a row in an IDTSBuffer100 to an IDTSOutput100.
Public method GetBLOBData Retrieves an array of bytes from a binary large object (BLOB) stored in a column of a IDTSBuffer100.
Public method GetBLOBLength Gets the number of bytes contained in a column in an IDTSBuffer100.
Public method GetBLOBObject Gets an IDTSBLOBObject100 that is used to read and write the bytes in a column in an IDTSBuffer100.
Public method GetBLOBStream Gets an IStream interface used to access the binary large object (BLOB) stored in a column in an IDTSBuffer100.
Public method GetBoundaryInfo Gets the number of columns and the maximum number of rows that an IDTSBuffer100 can hold.
Public method GetColumnCount Gets the number of columns in an IDTSBuffer100.
Public method GetColumnInfo Gets the DTP_BUFFCOL structure for the specified column in an IDTSBuffer100.
Public method GetData Retrieves the data stored in a specified row and column of a IDTSBuffer100.
Public method GetDataByRef (Feature deprecated, see Remarks.) Gets a pointer to the data stored in a column in an IDTSBuffer100.
Public method GetFlatMemory Gets a pointer to the bytes stored by an IDTSBuffer100.
Public method GetID Retrieves the ID of a buffer.
Public method GetManager Gets a buffer manager.
Public method GetRowCount Gets the number of rows stored in an IDTSBuffer100.
Public method GetRowDataBytes (Feature deprecated, see Remarks.) Gets a pointer to the start of a row in an IDTSBuffer100.
Public method GetRowStarts (Feature deprecated, see Remarks.) Use the GetData or GetBLOBData method instead of the GetRowStarts method.
Public method GetStatus Retrieves the status information of a column in an IDTSBuffer100.
Public method GetType Gets the handle of a buffer type.
Public method IsEndOfRowset Specifies whether an IDTSBuffer100 has reached the end of its collection of rows.
Public method IsNull Checks whether a specified column is null.
Public method LockData Locks the data in an IDTSBuffer100.
Public method MoveRow Moves a row in an IDTSBuffer100 to a new location.
Public method PrepareDataStatusForInsert Sets the status value of the columns in a range of rows.
Public method RemoveRow Deletes a row from an IDTSBuffer100.
Public method ResetBLOBData Deletes the bytes stored in a column in an IDTSBuffer100.
Public method SetBLOBFromObject Assigns the data contained in an IDTSBLOBObject100 to a column in an IDTSBuffer100.
Public method SetBLOBFromStream Assigns data to a binary large object (BLOB) column from a sequential stream.
Public method SetData Assigns data to a column in an IDTSBuffer100.
Public method SetEndOfRowset Notifies an IDTSBufferManager100 that the component has finished adding rows to an output IDTSBuffer100 object.
Public method SetErrorInfo Sets the error information for a row.
Public method SetStatus Sets the status information of a column in an IDTSBuffer100.
Public method SwapRows Swaps the location of two rows in an IDTSBuffer100.
Public method UnlockData Unlocks the data in an IDTSBuffer100 object.

Top

Remarks

The IDTSBuffer100 is an in-memory, two-dimensional data structure that contains rows and columns. Each column in a buffer has information that describes its data type, its offset location in memory in the row, its maximum size, and the lineage ID of the column in a component.

The data in each column is accessed either by using its offset as defined by the DTP_BUFFCOL structure, or by using the SetData and GetData methods, in which the data location of the column in the buffer is defined by handles to its row and column.

There are two types of buffers, private and public, which are created by the IDTSBufferManager100. Private buffers are created when requested by a data flow component and are used internally by the component. Public buffers are provided to the components in the data flow graph and filled and manipulated before arriving at the destination. Public buffers are created, managed, and destroyed by the IDTSBufferManager100.

Buffers are identified by their handles and are 1-based, which means they cannot have a value of zero or nulla null reference (Nothing in Visual Basic) unless they are invalid.

Managed component developers do not typically use the IDTSBuffer100 object unless they intend to create private buffers and implement the code necessary to interoperate between managed code and native code. Instead, they use the managed PipelineBuffer class.

See Also

Reference

Microsoft.SqlServer.Dts.Pipeline.Wrapper Namespace