Selecting a LOB Column into a LONG Buffer Using a Simple Fetch

Selecting a LOB Column into a LONG Buffer Using a Simple Fetch

The following example illustrates selecting a LOB column using a simple fetch:

void simple_fetch()
   
   
{
   
   
  word i, buf1 = 0;
   
   
  word retval;
   
   
  text buf[15000];
   
   
  text *selstmt = (text *) "SELECT AD_SOURCETEXT FROM PRINT_MEDIA WHERE PRODUCT_ID = 2004";
   
   

  
  
   
    
  
  
  OCIStmtPrepare(stmthp, errhp, selstmt, (ub4)strlen((char *)selstmt),
   
   
                 (ub4) OCI_NTV_SYNTAX, (ub4) OCI_DEFAULT);
   
   

  
  
   
    
  
  
  retval = OCIStmtExecute(svchp, stmthp, errhp, (ub4) 0, (ub4) 0,
   
   
                          (const OCISnapshot*) 0, (OCISnapshot*) 0,
   
   
                          (ub4) OCI_DEFAULT);
   
   
  while (retval == OCI_SUCCESS || retval == OCI_SUCCESS_WITH_INFO)
   
   
  {
   
   
    OCIDefineByPos(stmthp, &defhp[1], errhp, (ub4) 2, (dvoid *) buf,
   
   
                   (sb4) sizeof(buf1), (ub2) SQLT_CHR, (dvoid *) 0,
   
   
                   (ub2 *) 0, (ub2 *) 0, (ub4) OCI_DEFAULT);
   
   
    retval = OCIStmtFetch(stmthp, errhp, (ub4) 1,
   
   
                          (ub4) OCI_FETCH_NEXT, (ub4) OCI_DEFAULT);
   
   
    if (retval == OCI_SUCCESS || retval == OCI_SUCCESS_WITH_INFO)
   
   
      DISCARD printf("buf = %.*s/n", buf2);
   
   
  }
   
   
}
   
   

  
  
   
    
  
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值