ODBC绑定二进制参数示例

本文介绍了一个用于在SQL中绑定二进制参数的方法,并强调了在SQL Server中处理大量二进制数据时的注意事项,特别是当单次通讯的数据量接近8000字节时的限制。

void CODBCRecordset::AddBinaryParameter(bool IsOutput,int iParamIndex,BYTE* pParamValue, long& iParamLen,unsigned long iMaxLen)
{
 SQLRETURN ret = SQLBindParameter(_hstmt,
  (SQLUSMALLINT)iParamIndex,
  (IsOutput ? SQL_PARAM_OUTPUT : SQL_PARAM_INPUT),
  SQL_C_BINARY,
  SQL_VARBINARY,
  (SQLUINTEGER)iMaxLen,  // 字段长度
  0,
  (SQLPOINTER)pParamValue, // 实际数据
  (SQLUINTEGER)iMaxLen,  // 缓冲区长度
  (SQLINTEGER*)&iParamLen); // 实际数据长度
}

 

SQL SERVER上, 普通VARBINARY最多8000BYTE

但由于一次通讯的数据量上限也是8000左右,

因此如果表中有多个数据量较大的二进制字段,

则不要使用直接数据发送.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值