文档主页
MySQL 8.4 C API 开发者指南
下载本手册
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


5.4.62 mysql_real_query()

int
mysql_real_query(MYSQL *mysql,
                 const char *stmt_str,
                 unsigned long length)

说明

注意

mysql_real_query() 是一个同步函数。它的异步对应函数是 mysql_real_query_nonblocking(),供需要与服务器进行异步通信的应用程序使用。请参阅 第 7 章,C API 异步接口

mysql_real_query() 执行指向 stmt_str 的 SQL 语句,该字符串长度为 length 字节。通常,该字符串必须由单个 SQL 语句组成,不包含终止分号 (;) 或 \g。如果已启用多语句执行,则该字符串可以包含多个用分号分隔的语句。请参阅 第 3.6.3 节,“多语句执行支持”

mysql_query() 不能用于包含二进制数据的语句;您必须改用 mysql_real_query()。(二进制数据可能包含 \0 字符,mysql_query() 会将其解释为语句字符串的结尾。)此外,mysql_real_query()mysql_query() 快,因为它不会在语句字符串上调用 strlen()

要确定语句是否返回结果集,请调用 mysql_field_count()。请参阅 第 5.4.23 节,“mysql_field_count()”

返回值

成功返回零。如果发生错误,则返回非零值。

错误