Updating Rows by Bookmark with SQLBulkOperations
To update rows by bookmark with SQLBulkOperations, the application:
2 Sets the SQL_ATTR_ROW_ARRAY_SIZE statement attribute to the number of
bookmarks, and binds the buffer containing the bookmark value, or the array of
bookmarks, to column 0.
3 Places the new data values in the rowset buffers. For information on how to
send long data with SQLBulkOperations, see
4 Sets the value in the length/indicator buffer of each column as necessary.
This is the byte length of the data or SQL_NTS for columns bound to string
buffers, the byte length of the data for columns bound to binary buffers, and
SQL_NULL_DATA for any columns to be set to NULL.
5 Sets the value in the length/indicator buffer of those columns that are not to
be updated to SQL_COLUMN_IGNORE. Although the application can skip this step
and resend existing data, this is inefficient and risks sending values to the
data source that were truncated when they were read.
6 Calls SQLBulkOperations with the Operation argument set to SQL_UPDATE_BY_BOOKMARK.