- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MySQL C API函数详解
MySQL C API函数详解
在下面的描述中,一个NULL参数或返回值含义是在C编程语言环境的NULL,不是一个MySQL NULL值。
返回一个值的函数一般返回一个指针或一个整数。除非另外指定,返回一个指针的函数返回一个非 NULL值表明成功,或一个NULL值表明一个错误,而返回一个整数的函数返回零表示成功,或非零表示一个错误。注意,“非零”只有这个含义。除非函数描述另外
说明,不要测试一个零以外的其他值:
if (result) /* 正确 */
... error ...
if (result 0) /* 不正确 */
... error ...
if (result == -1) /* 不正确 */
... error ...
当函数返回一个错误时,函数描述的错误小节列出错误可能的类型。你可以调用mysql_
errno()找出发生了这些重的哪一个。错误的字符串表示可以调用mysql_error()获得。
20.4.1 mysql_affected_rows()
my_ulonglong mysql_affected_rows(MYSQL *mysql)
20.4.1.1 说明
返回受到最后一个UPDATE、DELETE或INSERT查询影响(变化)的行数。可以在针对UPDATE
、DELETE或INSERT语句的mysql_query()之后立即调用。对于SELECT语句,mysql_affec
ted_rows()的功能于mysql_num_rows()相同。
mysql_affected_rows()目前以一个宏(macro)来实现。
20.4.1.2 返回值
大于零的一个整数表示受到影响或检索出来的行数。零表示没有匹配查序中WHERE子句的
记录或目前还没有查询被执行。-1表示查询返回一个错误,或对于一个SELECT查询,my
sql_affected_rows()在调用mysql_store_result()之前被调用。
20.4.1.3 错误
没有。
20.4.1.4 范例
mysql_query(mysql,UPDATE products SET cost=cost*1.25 WHERE group=10);
printf(%d products updated,mysql_affected_rows(mysql));
20.4.2 mysql_close()
void mysql_close(MYSQL *mysql)
20.4.2.1 说明
关闭一个以前打开了的连接。如果句柄由mysql_init()或mysql_connect()自动分配,mysql_close()也释放被mysql指向的连接句柄。
20.4.2.2 返回值没有。
20.4.2.3 错误
CR_COMMANDS_OUT_OF_SYNC
命令以一个不正确的次序被执行。
CR_SERVER_GONE_ERROR
MySQL服务器关闭了。
CR_SERVER_LOST
对服务者的连接在查询期间失去。
CR_UNKNOWN_ERROR
发生一个未知的错误。
20.4.3 mysql_connect()
MYSQL *mysql_connect(MYSQL *mysql, const char *host, const char *user, const
char *passwd)
20.4.3.1 说明
该函数不推荐使用,而更好使用mysql_real_connect()。
mysql_connect()试图建立一个对运行在host的一个MySQL数据库引擎的连接。mysql_co
nnect()必须在你能执行其他API函数之前成功地完成,除了mysql_get_client_info()。
参数的含义与mysql_connect()相应的参数相同,不同的是连接参数可以是NULL。在这种
情况下,C API 自动为连接结构分配内存,并且当你调用mysql_close(),释放它。这种方法的缺点是如果连接失败,你不能检索出一条错误消息。(为了从mysql_errno()或mysql_error()得到错误信息,你必须提供一个有效的MYSQL指针。)
20.4.3.2 返回值
同mysql_real_connect()。
20.4.3.3 错误
同mysql_real_connect()。
20.4.4mysql_change_user()
my_bool mysql_change_user(MYSQL *mysql, const char *user, const char *password, const char *db)
文档评论(0)