頭檔案
#include<mysql.h>
函式原型
my_bool mysql_stmt_bind_result(MYSQL_STMT *stmt, MYSQL_BIND *bind)
函式說明
mysql_stmt_bind_result()用於將結果集中的列與數據緩衝和長度緩衝關聯(綁定)起來。當調用mysql_stmt_fetch()以獲取數據時,MySQL客戶端/伺服器協定會將綁定列的數據置於指定的緩衝區內。
調用mysql_stmt_fetch()之前,必須將所有列綁定到緩衝。“bind”是MYSQL_BIND結構某一數組的地址。按照客戶端庫的預期,對於結果集中的每一列,數組應包含相應的元素。如果未將列綁定到MYSQL_BIND結構,mysql_stmt_fetch()將簡單地忽略數據獲取操作。緩衝區應足夠大,足以容納數據值,這是因為協定不返回成塊的數據值。
可以在任何時候綁定或再綁定列,即使已部分檢索了結果集後也同樣。新的綁定將在下一次調用mysql_stmt_fetch()時起作用。假定某一應用程式綁定了結果集中的列,並調用了mysql_stmt_fetch()。客戶端/伺服器協定將返回綁定緩衝區中的數據。接下來,假定應用程式將多個列綁定到不同的緩衝。該協定不會將數據置於新綁定的緩衝區,直至下次調用mysql_stmt_fetch()為止。要想綁定列,應用程式將調用mysql_stmt_bind_result(),並傳遞類型、地址、以及長度緩衝的地址。
如果綁定成功,返回0。如果出現錯誤,返回非0值。
錯誤CR_UNSUPPORTED_PARAM_TYPE
不支持該轉換。或許buffer_type值是非法的,或不是所支持的類型之一。
· CR_OUT_OF_MEMORY
記憶體溢出。
· CR_UNKNOWN_ERROR
出現未知錯誤。