srv_setcollen(扩展存储过程 API)

重要说明重要提示

后续版本的 Microsoft SQL Server 将删除该功能。 请不要在新的开发工作中使用该功能,并尽快修改当前还在使用该功能的应用程序。请改用 CLR 集成。

指定长度可变的列或允许 NULL 值的列的当前数据长度(以字节为单位)。

语法


int srv_setcollen (
SRV_PROC *
srvproc
,
int 
column
,
int
len 
);

参数

  • srvproc
    指向作为特定客户端连接句柄的 SRV_PROC 结构的指针。此结构包含扩展存储过程 API 库用于管理应用程序和客户端之间的通信和数据的信息。

  • column
    指示指定其数据长度的列的编号。列从 1 开始编号。

  • len
    指示列数据的长度(以字节为单位)。长度为 0 表示列数据值为 Null。

返回值

SUCCEED 或 FAIL。

注释

必须首先使用 srv_describe 定义行的每个列。列数据长度通过对 srv_describesrv_setcollen 的最后一次调用设置。如果某一行长度可变的数据(以 Null 值结束的数据)发生更改,必须使用 srv_setcollen 将该数据设置为新的长度,然后才能调用 srv_sendrow。对于允许 Null 值的列,必须已调用 srv_describe,并将 desttype 设置为允许 Null 值的数据类型(如 SRVINTN),NULL 数据的指定方法是:调用 srv_setcollen并将 len 设置为 0。不能使用扩展存储过程 API 指定长度为零的数据。

请注意,当列数据类型的长度可变时,则不检查 len。如果调用固定长度的列,该函数则返回 FAIL。

安全说明安全说明

应全面检查扩展存储过程的源代码,并在生产服务器上安装编译的 DLL 之前,对这些 DLL 进行测试。有关安全检查和测试的信息,请参阅该 Microsoft 网站