
# 处理结果集
ODBC处理结果集是从数据库中获取数据并将其提供给应用程序进行处理，作用包括但不限于：检索数据、数据展示、数据处理、数据传输和业务逻辑实现等。
ODBC提供处理结果集的相关API如[表1]所示。
 表1相关API说明 
| **功能**       | **API**                                                                                                                          |
|:---|:---|
| 绑定缓冲区到结果集的列中 | [SQLBindCol](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0105.html#ZH-CN_TOPIC_0000002527825804)      |
| 结果集中取行集      | [SQLFetch](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0112.html#ZH-CN_TOPIC_0000002559105515)        |
| 返回结果集中某一列的数据 | [SQLGetData](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0118.html#ZH-CN_TOPIC_0000002527985760)      |
| 获取结果集中列的描述信息 | [SQLColAttribute](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0107.html#ZH-CN_TOPIC_0000002558945619) |
| 查看最近一次操作错误信息 | [SQLGetDiagRec](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0119.html#ZH-CN_TOPIC_0000002558945625)   |
   
示例如下（完整示例请参考[获取和处理数据库中的数据](https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-1840.html#ZH-CN_TOPIC_0000002559105507)）：
```
// 在执行完成SQL语句后，获取结果集某一列的属性。
SQLColAttribute(V_OD_hstmt,1,SQL_DESC_TYPE,typename,100,NULL,NULL);
printf("SQLColAtrribute %s\n",typename);  

// 绑定结果集。
SQLBindCol(V_OD_hstmt,1,SQL_C_SLONG, (SQLPOINTER)&V_OD_buffer,150,
(SQLLEN *)&V_OD_err);
// 通过SQLFetch取结果集中数据。
V_OD_erg=SQLFetch(V_OD_hstmt);
// 通过SQLGetData获取并返回数据。
while(V_OD_erg != SQL_NO_DATA)
{
  SQLGetData(V_OD_hstmt,1,SQL_C_SLONG,(SQLPOINTER)&V_OD_id,0,NULL);
  printf("SQLGetData ----ID = %d\n",V_OD_id);
  V_OD_erg=SQLFetch(V_OD_hstmt);
};
printf("Done !\n");
```
