#include <hsclient.hpp>
|
| hsclient (const char *addr, bool cache_enable=true, bool retry_enable=true) |
|
| ~hsclient () |
|
const std::vector< hsrow * > & | get (const char *values[], int num, const char *cond="=", int nlimit=0, int noffset=0) |
|
const std::vector< hsrow * > & | get (const char *first_value,...) ACL_CPP_PRINTF(2 |
|
const std::vector< hsrow * > bool | mod (const char *values[], int num, const char *to_values[], int to_num, const char *cond="=", int nlimit=0, int noffset=0) |
|
bool | del (const char *values[], int num, const char *cond="=", int nlimit=0, int noffset=0) |
|
bool | fmt_del (const char *first_value,...) ACL_CPP_PRINTF(2 |
|
bool bool | add (const char *values[], int num) |
|
bool | fmt_add (const char *first_value,...) ACL_CPP_PRINTF(2 |
|
bool void | debug_enable (bool on) |
|
bool | open_tbl (const char *dbn, const char *tbl, const char *idx, const char *flds, bool auto_open=true) |
|
const char * | get_addr () const |
|
int | get_error () const |
|
const char * | get_serror (int errnum) const |
|
const char * | get_last_serror () const |
|
int | get_id () const |
|
◆ hsclient()
acl::hsclient::hsclient |
( |
const char * |
addr, |
|
|
bool |
cache_enable = true , |
|
|
bool |
retry_enable = true |
|
) |
| |
构造函数
- 参数
-
addr | {const char*} handlersocket 插件在 Mysql 上的监听地址, |
cache_enable | {bool} 内部是否启用行缓存功能 |
retry_enable | {bool} 当因为网络原因出错时是否需要重试 格式为:ip:port |
◆ ~hsclient()
acl::hsclient::~hsclient |
( |
| ) |
|
◆ add()
bool bool acl::hsclient::add |
( |
const char * |
values[], |
|
|
int |
num |
|
) |
| |
向数据库添加新记录
- 参数
-
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与构造 函数中 flds 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过构造函数中 flds 所含有的 字段个数 |
- 返回
- {bool} 添加记录是否成功
◆ debug_enable()
bool void acl::hsclient::debug_enable |
( |
bool |
on | ) |
|
设置是否进行调试
- 参数
-
on | {bool} true 则表示进行调试,会将一些中间信息记入日志中 |
◆ del()
bool acl::hsclient::del |
( |
const char * |
values[], |
|
|
int |
num, |
|
|
const char * |
cond = "=" , |
|
|
int |
nlimit = 0 , |
|
|
int |
noffset = 0 |
|
) |
| |
删除数据库表中匹配字段的记录
- 参数
-
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与 open 函数中 flds 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过构造函数中 flds 所含有的 字段个数 |
cond | {const char*} 匹配条件,可以为: = 等于; >= 大于等于; > 大于; < 小于; <= 小于等于 |
nlimit | {int} 删除数据的个数, 0 表示不限制 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
- 返回
- {bool} 更新是否成功
◆ fmt_add()
bool acl::hsclient::fmt_add |
( |
const char * |
first_value, |
|
|
|
... |
|
) |
| |
向数据库中添加新记录
- 参数
-
first_value | {const char*} 为对应于构造函数中 flds 字段集中 的第一个字段的字段值 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
- 返回
- {bool} 添加记录是否成功
◆ fmt_del()
bool acl::hsclient::fmt_del |
( |
const char * |
first_value, |
|
|
|
... |
|
) |
| |
删除数据库表中匹配字段的记录
- 参数
-
first_value | {const char*} 为对应于构造函数中 flds 字段集中 的第一个字段的字段值 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
- 返回
- {bool} 添加记录是否成功
◆ get() [1/2]
const std::vector<hsrow*>& acl::hsclient::get |
( |
const char * |
values[], |
|
|
int |
num, |
|
|
const char * |
cond = "=" , |
|
|
int |
nlimit = 0 , |
|
|
int |
noffset = 0 |
|
) |
| |
查询与所给字段值匹配的结果
- 参数
-
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与 open 函数中 flds 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过构造函数中 flds 所含有的 字段个数 |
cond | {const char*} 匹配条件,可以为: = 等于; >= 大于等于; > 大于; < 小于; <= 小于等于 |
nlimit | {int} 结果集个数限制,0 表示不限制个数 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
- 返回
- {const std::verctor<hsrow*>&} 返回结果集
◆ get() [2/2]
const std::vector<hsrow*>& acl::hsclient::get |
( |
const char * |
first_value, |
|
|
|
... |
|
) |
| |
查询与所给字段值匹配的结果
- 参数
-
first_value | {const char*} 为对应于构造函数中 flds 字段集中 的第一个字段的字段值 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
- 返回
- {const std::verctor<hsrow*>&} 返回结果集
◆ get_addr()
const char* acl::hsclient::get_addr |
( |
| ) |
const |
获得连接地址
- 返回
- {const char*} 永不为空
◆ get_error()
int acl::hsclient::get_error |
( |
| ) |
const |
◆ get_id()
int acl::hsclient::get_id |
( |
| ) |
const |
获得当前 hsclient 对象所用的 id 号
- 返回
- {int}
◆ get_last_serror()
const char* acl::hsclient::get_last_serror |
( |
| ) |
const |
获得上次出错时的错误描述信息
- 返回
- {const char*}
◆ get_serror()
const char* acl::hsclient::get_serror |
( |
int |
errnum | ) |
const |
获得出错错误信息描述
- 参数
-
errnum | {int} 由 get_error 获得的错误号 |
- 返回
- {const char*}
◆ mod()
const std::vector<hsrow*> bool acl::hsclient::mod |
( |
const char * |
values[], |
|
|
int |
num, |
|
|
const char * |
to_values[], |
|
|
int |
to_num, |
|
|
const char * |
cond = "=" , |
|
|
int |
nlimit = 0 , |
|
|
int |
noffset = 0 |
|
) |
| |
更新数据库表中匹配字段的数值
- 参数
-
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与 open 函数中 flds 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过构造函数中 flds 所含有的 字段个数 |
to_values | {cosnt *[]} 匹配字段新值,字段值的顺序应与 open 方法中 的字段顺序相同 |
to_num | {int} to_values 数组长度 |
cond | {const char*} 匹配条件,可以为: = 等于; >= 大于等于; > 大于; < 小于; <= 小于等于 |
nlimit | {int} 结果集个数限制,0 表示不限制个数 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
- 返回
- {bool} 更新是否成功
◆ open_tbl()
bool acl::hsclient::open_tbl |
( |
const char * |
dbn, |
|
|
const char * |
tbl, |
|
|
const char * |
idx, |
|
|
const char * |
flds, |
|
|
bool |
auto_open = true |
|
) |
| |
打开数据库表
- 参数
-
dbn | {const char*} 数据库名称 |
tbl | {const char*} 数据库表名 |
idx | {const char*} 索引字段名 |
flds | {const char*} 要打开的数据字段名集合,格式为 由分隔符 ",; \t" 分隔的字段名称,如:user_id,user_name,user_mail |
auto_open | {bool} 当表未打开是否自动打开 |
- 返回
- {bool} true 表示正常打开,否则表示打开表失败
该类的文档由以下文件生成: