当前位置:首页 > 技术与方案 > 数据库技术相关

轻松掌握对处理程序 进行实例化处理

(2012-09-24 20:11:03)

       调用存储引擎的第1个方法是调用新的处理程序实例。

 

在存储引擎源文件中定义handlerton之前,必须定义用于函数实例化的函数题头。下面给出了1个来自CSV引擎的示例:

 

tatic handler* tina_create_handler(TABLE *table);

正如你所见到的那样,函数接受指向处理程序准备管理的表的指针,并返回处理程序对象。

 

定义了函数题头后,用第21个handlerton元素中的函数指针命名函数,指明函数负责生成新的处理程序实例。

 

下面给出了MyISAM存储引擎的实例化函数示例:

 

tatic handler *myisam_create_handler(TABLE *table) { return new ha_myisam(table); }

该调用随后与存储引擎的构造程序一起工作。下面给出了来自FEDERATED存储引擎的1个示例:

 

ha_federated::ha_federated(TABLE *table_arg) :handler( federated_hton, table_arg), mysql(0), stored_result(0), scan_flag(0), ref_length(sizeof(MYSQL_ROW_OFFSET)), current_position(0) {}

下面给出了来自EXAMPLE存储引擎的另一个示例:

 

ha_example::ha_example(TABLE *table_arg) :handler( example_hton, table_arg) {}

FEDERATED示例中的附加元素是处理程序的额外初始化要素。所要求的最低实施是EXAMPLE示例中显示的handler()初始化。

更多
关闭窗口 打印 
网站首页    -    联系我们    -   收藏本站    -    网站地图                                                               客户服务热线:0571-85023000
本网站所有网页信息已申请知识产权和著作权保护,版权归四海光纤公司所有,未经授权禁止任何人复制或镜像,违者必究。
公司主营:杭州光纤光缆视频会议系统,是专业的通信网络工程、视频会议系统建设专家

中华人民共和国备案号:浙ICP备10018243号