acl
3.5.3.0
|
#include <hsproto.hpp>
Public 成员函数 | |
hsproto (bool cache_enable) | |
~hsproto () | |
bool | parse_respond (int nfld, string &in, int &errnum_out, const char *&serror_out) |
const std::vector< hsrow * > & | get () |
void | reset () |
静态 Public 成员函数 | |
static bool | build_open (string &out, int id, const char *dbn, const char *tbl, const char *idx, const char *flds) |
static bool | build_get (string &out, int id, const char *values[], int num, const char *cond="=", int nlimit=0, int noffset=0) |
static bool | ACL_CPP_PRINTF (4, 5) build_get(string &out |
static bool int int const char static bool | build_mod (string &out, int id, const char *values[], int num, const char *to_values[], int to_num, const char *cond="=", int nlimit=0, int noffset=0) |
static bool | build_del (string &out, int id, const char *values[], int num, const char *cond="=", int nlimit=0, int noffset=0) |
static bool | ACL_CPP_PRINTF (4, 5) build_del(string &out |
static bool int int const char static bool | build_add (string &out, int id, const char *values[], int num) |
static bool | ACL_CPP_PRINTF (4, 5) build_add(string &out |
static bool int int const char static void | build_request (string &out, int id, const char *oper, const char *values[], int num, const char *limit_offset, char mop, const char *to_values[], int to_num) |
Public 属性 | |
static bool int | id |
static bool int int | nfld |
static bool int int const char * | first_value |
额外继承的成员函数 | |
Protected 成员函数 继承自 acl::acl::noncopyable | |
noncopyable () | |
~noncopyable () | |
在文件 hsproto.hpp 第 13 行定义.
acl::hsproto::hsproto | ( | bool | cache_enable | ) |
acl::hsproto::~hsproto | ( | ) |
|
static |
创建查询数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
nfld | {int} 在打开索引时字段个数 |
first_value | {const char*} 第一个参数 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
|
static |
创建删除数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
nfld | {int} 在打开索引时字段个数 |
first_value | {const char*} 第一个参数 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
|
static |
创建添加数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
nfld | {int} 在打开索引时字段个数 |
first_value | {const char*} 第一个参数 |
... | {const char*} 参数列表,最后一个参数为 NULL 表示结束 |
|
static |
创建添加数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与打开索引 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过在打开索引时的字段个数 |
|
static |
创建删除数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与打开索引 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过在打开索引时的字段个数 |
cond | {const char*} 匹配条件,可以为: |
nlimit | {int} 结果集个数限制,0 表示不限制个数 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
|
static |
创建查询数据库记录的请求协议数据
out | {string&} 存储请求协议结果 |
id | {int} 对应打开索引的表ID号 |
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与打开索引 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过在打开索引时的字段个数 |
cond | {const char*} 匹配条件,可以为: = 等于; >= 大于等于; > 大于; < 小于; <= 小于等于 |
nlimit | {int} 结果集个数限制,0 表示不限制个数 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
|
static |
创建修改数据库记录的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与打开索引 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过在打开索引时的字段个数 |
to_values | {cosnt *[]} 匹配字段新值,字段值的顺序应与 open 方法中 的字段顺序相同 |
to_num | {int} to_values 数组长度 |
cond | {const char*} 匹配条件,可以为: |
nlimit | {int} 结果集个数限制,0 表示不限制个数 |
noffset | {int} 结果集开始位置(0表示从第一个结果开始) |
|
static |
创建打开数据库索引的请求协议数据
out | {string&} 存储请求协议结果 |
id | {int} 对应打开索引的表ID号 |
dbn | {const char*} 数据库名称 |
tbl | {const char*} 数据库表名 |
idx | {const char*} 索引字段名 |
flds | {const char*} 要打开的数据字段名集合,格式为 由分隔符 ",; \t" 分隔的字段名称,如:user_id,user_name,user_mail |
|
static |
通用的创建数据库处理的请求协议数据
out | {string&} 存储请求协议数据 |
id | {int} 对应打开索引的表ID号 |
oper | {const char*} 操作方式,对应的操作符为: 添加: + 查询: =, >, >=, <, <= 修改: =, >, >=, <, <= 删除: =, >, >=, <, <= |
values | {const char*[]} 匹配字段值数组,字段值的加入顺序应与打开索引 中各个字段的顺序相同 |
num | {int} values 数组长度,该值不应超过在打开索引时的字段个数 |
limit_offset | {const char*} 要求的查询范围 |
mop | {char} 仅针对删除,修改操作有效,其对应的操作符分别为: D: 删除, U: 修改 |
to_values | {const char*[]} 目标值指针数组 |
to_num | {int} to_values 数组的长度 |
const std::vector<hsrow*>& acl::hsproto::get | ( | ) |
当执行查询语句时,可以通过此函数获得查询的结果集
bool acl::hsproto::parse_respond | ( | int | nfld, |
string & | in, | ||
int & | errnum_out, | ||
const char *& | serror_out | ||
) |
分析数据库的返回数据
nfld | {int} 打开的表的元素个数 |
in | {string&} 从数据库读到的数据行, 尾部应该不包含 "\r\n" |
errnum_out | {int&} 存储处理过程的出错号,参见: hserror.hpp |
serror_out | {const char*&} 存储处理过程的出错描述信息 |
void acl::hsproto::reset | ( | ) |
当用户用完查询结果集后进行第二次查询时调用此函数清理上次查询结果
static bool int int const char * acl::hsproto::first_value |
在文件 hsproto.hpp 第 60 行定义.
static bool int acl::hsproto::id |
在文件 hsproto.hpp 第 60 行定义.
static bool int int acl::hsproto::nfld |
在文件 hsproto.hpp 第 60 行定义.