Export (0) Print
Expand All

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)

[GuidAttribute("C52D4833-C82E-4853-B88B-6B523AEE7735")]
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]
[ComConversionLossAttribute]
public interface IDTSBuffer100

The IDTSBuffer100 type exposes the following members.

  NameDescription
Public methodAddBLOBDataAppends byte data to a column in an IDTSBuffer100.
Public methodAddRowAdds a new row to an IDTSBuffer100 object.
Public methodCloneCreates a private copy of an IDTSBuffer100 object.
Public methodDirectErrorRowSends a row in an IDTSBuffer100 object to an IDTSOutput100 whose IsErrorOut property is true.
Public methodDirectRowSends a row in an IDTSBuffer100 to an IDTSOutput100.
Public methodGetBLOBDataRetrieves an array of bytes from a binary large object (BLOB) stored in a column of a IDTSBuffer100.
Public methodGetBLOBLengthGets the number of bytes contained in a column in an IDTSBuffer100.
Public methodGetBLOBObjectGets an IDTSBLOBObject100 that is used to read and write the bytes in a column in an IDTSBuffer100.
Public methodGetBLOBStreamGets an IStream interface used to access the binary large object (BLOB) stored in a column in an IDTSBuffer100.
Public methodGetBoundaryInfoGets the number of columns and the maximum number of rows that an IDTSBuffer100 can hold.
Public methodGetColumnCountGets the number of columns in an IDTSBuffer100.
Public methodGetColumnInfoGets the DTP_BUFFCOL structure for the specified column in an IDTSBuffer100.
Public methodGetDataRetrieves the data stored in a specified row and column of a IDTSBuffer100.
Public methodGetDataByRef (Feature deprecated, see Remarks.) Gets a pointer to the data stored in a column in an IDTSBuffer100.
Public methodGetFlatMemoryGets a pointer to the bytes stored by an IDTSBuffer100.
Public methodGetIDRetrieves the ID of a buffer.
Public methodGetManagerGets a buffer manager.
Public methodGetRowCountGets the number of rows stored in an IDTSBuffer100.
Public methodGetRowDataBytes(Feature deprecated, see Remarks.) Gets a pointer to the start of a row in an IDTSBuffer100.
Public methodGetRowStarts(Feature deprecated, see Remarks.) Use the GetData or GetBLOBData method instead of the GetRowStarts method.
Public methodGetStatusRetrieves the status information of a column in an IDTSBuffer100.
Public methodGetTypeGets the handle of a buffer type.
Public methodIsEndOfRowsetSpecifies whether an IDTSBuffer100 has reached the end of its collection of rows.
Public methodIsNullChecks whether a specified column is null.
Public methodLockDataLocks the data in an IDTSBuffer100.
Public methodMoveRowMoves a row in an IDTSBuffer100 to a new location.
Public methodPrepareDataStatusForInsertSets the status value of the columns in a range of rows.
Public methodRemoveRowDeletes a row from an IDTSBuffer100.
Public methodResetBLOBDataDeletes the bytes stored in a column in an IDTSBuffer100.
Public methodSetBLOBFromObjectAssigns the data contained in an IDTSBLOBObject100 to a column in an IDTSBuffer100.
Public methodSetBLOBFromStreamAssigns data to a binary large object (BLOB) column from a sequential stream.
Public methodSetDataAssigns data to a column in an IDTSBuffer100.
Public methodSetEndOfRowsetNotifies an IDTSBufferManager100 that the component has finished adding rows to an output IDTSBuffer100 object.
Public methodSetErrorInfoSets the error information for a row.
Public methodSetStatusSets the status information of a column in an IDTSBuffer100.
Public methodSwapRowsSwaps the location of two rows in an IDTSBuffer100.
Public methodUnlockDataUnlocks the data in an IDTSBuffer100 object.
Top

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 null 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.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft