NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
mysql_prepared_statement类 参考final

MySQL预处理语句类 更多...

#include <mysql_prepared_statement.hpp>

类 mysql_prepared_statement 继承关系图:
[图例]

Public 成员函数

 mysql_prepared_statement (::MYSQL *conn, string_view sql)
 构造函数
 mysql_prepared_statement (mysql_prepared_statement &&other) noexcept
 移动构造函数
mysql_prepared_statementoperator= (mysql_prepared_statement &&other) noexcept
 移动赋值运算符
 ~mysql_prepared_statement () override
 析构函数
NEFORCE_NODISCARD uint32_t param_count () const noexcept override
 获取参数数量
bool bind_param (uint32_t index, const string &value) override
 绑定字符串参数
bool bind_param (uint32_t index, string_view value) override
 绑定字符串视图参数
bool bind_param (uint32_t index, const char *value) override
 绑定C字符串参数
bool bind_param (uint32_t index, int32_t value) override
 绑定32位整数参数
bool bind_param (uint32_t index, int64_t value) override
 绑定64位整数参数
bool bind_param (uint32_t index, float64_t value) override
 绑定浮点数参数
bool bind_param (uint32_t index, cbyte_view value) override
 绑定二进制数据参数
bool execute () override
 执行非查询语句
NEFORCE_NODISCARD unique_ptr< idb_prepared_resultexecute_query () override
 执行查询语句
NEFORCE_NODISCARD string_view get_error () const noexcept override
 获取错误信息
NEFORCE_NODISCARD uint32_t get_errno () const noexcept override
 获取错误码

详细描述

MySQL预处理语句类

实现idb_prepared_statement接口,支持参数绑定、语句执行和结果集获取。

主要功能:

  • SQL语句预处理
  • 参数绑定
  • 语句执行
  • 查询执行
  • 错误信息获取
注解
MySQL使用?作为参数占位符,参数索引从0开始。

在文件 mysql_prepared_statement.hpp43 行定义.

构造及析构函数说明

◆ mysql_prepared_statement() [1/2]

mysql_prepared_statement::mysql_prepared_statement ( ::MYSQL * conn,
string_view sql )

构造函数

参数
connMySQL连接句柄
sqlSQL语句
异常
database_stmt_exception预处理失败时抛出

初始化预处理语句,获取参数数量。

被这些函数引用 mysql_prepared_statement() , 以及 operator=().

◆ mysql_prepared_statement() [2/2]

mysql_prepared_statement::mysql_prepared_statement ( mysql_prepared_statement && other)
noexcept

移动构造函数

参数
other源对象

引用了 mysql_prepared_statement().

◆ ~mysql_prepared_statement()

mysql_prepared_statement::~mysql_prepared_statement ( )
override

析构函数

关闭预处理语句,释放资源。

成员函数说明

◆ bind_param() [1/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
cbyte_view value )
overridevirtual

绑定二进制数据参数

参数
index参数索引
value字节视图
返回
绑定成功返回true

实现了 idb_prepared_statement.

◆ bind_param() [2/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
const char * value )
inlineoverridevirtual

绑定C字符串参数

参数
index参数索引
valueC字符串
返回
绑定成功返回true

实现了 idb_prepared_statement.

在文件 mysql_prepared_statement.hpp114 行定义.

引用了 bind_param().

被这些函数引用 bind_param().

◆ bind_param() [3/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
const string & value )
inlineoverridevirtual

绑定字符串参数

参数
index参数索引(从0开始)
value字符串值
返回
绑定成功返回true

实现了 idb_prepared_statement.

在文件 mysql_prepared_statement.hpp98 行定义.

引用了 bind_param() , 以及 basic_string< CharT, Traits, Alloc >::view().

被这些函数引用 bind_param().

◆ bind_param() [4/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
float64_t value )
overridevirtual

绑定浮点数参数

参数
index参数索引
value浮点值
返回
绑定成功返回true

实现了 idb_prepared_statement.

◆ bind_param() [5/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
int32_t value )
overridevirtual

绑定32位整数参数

参数
index参数索引
value整数值
返回
绑定成功返回true

实现了 idb_prepared_statement.

◆ bind_param() [6/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
int64_t value )
overridevirtual

绑定64位整数参数

参数
index参数索引
value整数值
返回
绑定成功返回true

实现了 idb_prepared_statement.

◆ bind_param() [7/7]

bool mysql_prepared_statement::bind_param ( uint32_t index,
string_view value )
overridevirtual

绑定字符串视图参数

参数
index参数索引
value字符串视图
返回
绑定成功返回true

实现了 idb_prepared_statement.

◆ execute()

bool mysql_prepared_statement::execute ( )
overridevirtual

执行非查询语句

返回
执行成功返回true

执行已绑定参数的预处理语句,不返回结果集。

实现了 idb_prepared_statement.

◆ execute_query()

NEFORCE_NODISCARD unique_ptr< idb_prepared_result > mysql_prepared_statement::execute_query ( )
overridevirtual

执行查询语句

返回
查询结果集,失败返回空指针

执行查询并返回结果集对象。

实现了 idb_prepared_statement.

◆ get_errno()

NEFORCE_NODISCARD uint32_t mysql_prepared_statement::get_errno ( ) const
overridevirtualnoexcept

获取错误码

返回
MySQL错误码

实现了 idb_prepared_statement.

引用了 get_errno().

被这些函数引用 get_errno().

◆ get_error()

NEFORCE_NODISCARD string_view mysql_prepared_statement::get_error ( ) const
overridevirtualnoexcept

获取错误信息

返回
错误描述字符串

实现了 idb_prepared_statement.

◆ operator=()

mysql_prepared_statement & mysql_prepared_statement::operator= ( mysql_prepared_statement && other)
noexcept

移动赋值运算符

参数
other源对象
返回
自身引用

引用了 mysql_prepared_statement() , 以及 operator=().

被这些函数引用 operator=().

◆ param_count()

NEFORCE_NODISCARD uint32_t mysql_prepared_statement::param_count ( ) const
inlineoverridevirtualnoexcept

获取参数数量

返回
SQL语句中的?占位符数量

实现了 idb_prepared_statement.

在文件 mysql_prepared_statement.hpp90 行定义.


该类的文档由以下文件生成: