srv_setcollen (Extended Stored Procedure API)
This feature will be removed in a future version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible. Use CLR integration instead.
Specifies the current data length in bytes of a variable-length column or a column that allows NULL values.
int srv_setcollen ( SRV_PROC * srvproc , int column , int len );
Is a pointer to the SRV_PROC structure that is the handle for a particular client connection. The structure contains information the Extended Stored Procedure API library uses to manage communication and data between the application and the client.
Indicates the number of the column for which the data length is being specified. Columns are numbered beginning with 1.
Indicates the length, in bytes, of the column data. A length of 0 means the column data value is null.
SUCCEED or FAIL.
Each column of the row must first be defined with srv_describe. The column data length is set by the last call to srv_describe or srv_setcollen. If variable-length data (null-terminated data) changes for a row, srv_setcollen must be used to set it to the new length before calling srv_sendrow. For a column that allows null values, srv_describe must have been called with desttype set to a data type that allows nulls (like SRVINTN) and null data is specified by calling srv_setcollen with len set to 0. Zero length data cannot be specified using the Extended Stored Procedure API.
Note that when the data type of the column is variable-length, len is not checked. This function returns FAIL if called for a fixed-length column.
You should thoroughly review the source code of extended stored procedures, and you should test the compiled DLLs before you install them on a production server. For information about security review and testing, see this Microsoft Web site.