# Prepared Statements 和 Connector
+ 因为充分利用了二进制协议,通过 Connector 使用 prepared statement 比在 mysql command-line 客户端里更高效
+ 每种 Connector 都会提供 prepared statement 的 API, 例如, C API 提供了:
    + `mysql_stmt_init( )`
    + `mysql_stmt_prepare( )`
    + `mysql_stmt_bind_param( )`
    + `mysql_stmt_bind_result( )`
    + `mysql_stmt_execute( )`
    + `mysql_stmt_fetch( )`
-------------------------------------------------------------------
虽然您可以在 mysql 命令行客户端中使用 SQL 准备和执行语句,但通过连接器使用预准备语句时,可以从中获得最大的好处。因为它充分利用了二进制协议。

不同编程语言的连接器提供了自己的函数和数据结构,允许您准备和执行语句。本幻灯片向您展示了 C API 中提供的一些函数。显示的功能允许您:

为准备好的语句创建一个容器 (mysql_stmt_init ())

通过提供 SQL 字符串来准备语句 (mysql_stmt_prepare ())

传入结果的参数和容器（mysql_stmt_bind_param () 和 mysql_stmt_bind_result ()）

执行该语句 (mysql_stmt_execute ())

一次选择一行结果 (mysql_stmt_fetch ())
