MySQL:如何编写Information Schema Plugin(7)
来源:未知 责任编辑:责任编辑 发表时间:2013-12-06 08:45 点击:次
MySQL层代码大多定义在sql文件夹下,我们在编译时指定相应的目录即可。
当我们的操作对系统影响比较大时,需要尽快的得到结果,例如,内建的I_S表COLUMNS,在填充数据时需要打开所有的表,如果在Plugin层做过滤,那么当我们找到一个不符合条件的表时,尽快关闭,而不是等到MYSQL层来过滤后关闭。
例如函数:
bool calc_lookup_values_from_cond(THD *thd,COND *cond, TABLE_LIST *table, LOOKUP_FIELD_VALUES *lookups);
其中LOOPUP_FIEDL_VALUES结构体为:
sql/sql_show.cc:
typedef struct st_lookup_field_values
{
LEX_STRING value1, value2;
bool value1_is_wildcard, value2_is_wildcard;
} LOOKUP_FIELD_VALUES;
这个函数用于处理等值的情况,函数将寻找类似field1 = constant1 和field2 = constant2这样的条件, 如果找到了,将被存储在LOOKUP_FIELD_VALUES结构体的value1和value2中:
lookups.value1.str
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>