[发明专利]一种访问不同类型关系型数据库的方法无效
申请号: | 200910018621.1 | 申请日: | 2009-09-07 |
公开(公告)号: | CN101645074A | 公开(公告)日: | 2010-02-10 |
发明(设计)人: | 孙立新;郑伟波;赵启杰 | 申请(专利权)人: | 浪潮集团山东通用软件有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 访问 不同类型 关系 数据库 方法 | ||
1.一种访问不同类型关系型数据库的方法,其特征在于,通过分析、识别不同类型、版本关系型数据库的差异,针对差异进行封装:以组件形式向外提供了一致的编程访问接口,对SQL语句语法、各种数据库函数、命令,统一调用标准和书写格式,屏蔽因不同类型、版本关系型数据库造成的差异;内部按照数据库类型及版本进行分别的针对性的实现,在屏蔽数据库类型、版本差异时,采用编程接口和SQL语法两种方法进行封装,两种方法混合使用,既达到屏蔽数据库类型、版本差异的效果,又使编程实现的复杂度降低,具体访问步骤包括:
1)接收获取“数据访问接口”的请求,请求的参数为“数据访问配置项标识”;
2)根据“数据访问配置项标识”,获取配置项以确定对应的数据库类型及版本,根据配置项创建实现了特定类型、版本数据库访问的对象,将该对象以“数据访问接口”形式返回;
3)“数据访问接口”接收与特定数据库类型、版本无关的数据访问的方法调用请求及方法参数;
4)“数据访问接口”根据特定的方法调用请求,将与特定数据库类型、版本无关的请求转换为特定数据库类型、版本可执行的SQL语句;
5)将转换后的针对特定数据库类型、版本的SQL语句发送至相应的目标数据库;
6)目标数据库执行所述的SQL语句,返回执行结果。
2、根据权利要求1所述的方法,其特征在于,“数据访问接口”封装数据库操作的统一编程接口,用以屏蔽各类数据库在编程调用方面的差异,定义了访问数据库的操作标准。此接口包含了一组用于执行数据库操作的属性和方法。
3、根据权利要求1所述的方法,其特征在于,“数据访问配置项标识”,是基于XML的配置文件中的配置小节的标识,可用于唯一标记一个“数据访问配置项”,每一个“数据访问配置项”描述的内容包括:配置项标识、配置项名称、数据库类型、类型元数据、数据库连接信息,其中“类型元数据”用于程序动态加载实现了“数据访问接口”的特定类型、版本数据库访问的对象类型并创建对象的信息;其中“数据库连接信息”是用于创建“数据库会话”的连接字符串描述。
4、根据权利要求1所述的方法,其特征在于,“与特定数据库类型、版本无关”,由两种规范性定义来实现:一种是方法的规范性定义,一种是SQL语句的规范性定义,对于方法的规范性定义,是将在不同的数据库类型中实现差异较大的SQL语法以及函数等采用一致的编程接口的形式进行封装,屏蔽其差异,在执行时,由“实现特定类型、版本数据库访问的对象”进行具体的转换,形成特定类型、版本数据库可执行的SQL;对于SQL语句的规范性定义,是针对不同数据库中SQL语法的一些局部差异,采用约定好的规则字符串形式进行封装,屏蔽其差异,在执行时由“实现特定类型、版本数据库访问的对象”采用基于“自定义表达式”解析、替换的方法将规范化的SQL语句替换为具体数据库上可执行的SQL语句。
5、根据权利要求4所述的方法,其特征在于,“自定义表达式”,是一种自定义的可识别、可解析的表达式形式,其表达的语法为:{[V:]|[F:]<expression>},表达式总是以“{”开始,以“}”结束。“V:”表示表达式为变量表达式,“F:”表示后表达式为函数表达式,默认为变量表达式。<expression>::={variant|<function>},<function>::={function_name(argument[,...n])}。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团山东通用软件有限公司,未经浪潮集团山东通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910018621.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:人体静脉红外扫描仪
- 下一篇:输变电系统中中压开关柜的电路结构