基于驱动层实现的异构数据库保留字兼容方法及系统技术方案

技术编号:8191007 阅读:199 留言:0更新日期:2013-01-10 01:54
本发明专利技术公开了一种异构数据库保留字兼容方法,预先在驱动层加载存储有属于目标数据库但不属于源数库的保留字配置文件,该方法具体为:应用程序执行SQL语句;驱动层对SQL语句进行分析,生成具有语义的语法树;依据保留字配置文件对语法树中的对象名进行保留字识别,并采用目标数据库的保留字符号对其进行标记;依据保留字标记后的语法树生成新的SQL语句;将新的SQL语句发送给目标数据库。本发明专利技术还提供实现上述方法的系统。本发明专利技术能够不改变应用程序代码,实现从源数据库向不同的异构数据库移植的目的,与传统服务器层进行兼容支持相比,在驱动层支持兼容性具有简单灵活的技术特点,降低系统风险和移植成本。

【技术实现步骤摘要】

本专利技术属于计算机中的数据库
,具体涉及ー种基于驱动层实现的异构数据库保留字兼容方法及系统,用于跨异构数据库的移植服务。
技术介绍
数据库针对应用程序进行兼容的领域,在当前大量的现有旧信息系统升级改造项目中非常普遍。在这些项目中开发商要求国产数据库厂商保证应用程序不改一行代码,实现从旧数据库向新的其它厂商数据库的移植。但是由于国外数据库厂商拥有各自市场的稳定的市场范围,因此在异构数据库产品兼容领域没有強烈的产品需求,DB2是近两年才开始走Oracle兼容的路线,SQLServer、Oracle等公司基本上没有宣传过异构数据库兼容的特性。而作为国产数据库产品提供商,需要抢占国外数据库产品的市场份额,在这样的形式 下,如何能简单易行的兼容国外数据库产品及其上层应用,就成为非常重要的研究領域。在应用程序不改一行代码,实现保留字兼容问题上,目前很多国产数据库厂商无法解决,其中原因之ー是,应用系统中的部分数据库对象名的名字,在数据库中是属于保留字,如果要不变换对象名,必须对保留字对象名加双引号作为定界标识符出现,但是这样就要求代码进行修改,因此无论是加引号还是改对象名,都无法避免更改本文档来自技高网...

【技术保护点】
异构数据库保留字兼容方法,预先在驱动层加载保留字配置文件,保留字配置文件中存储有属于目标数据库但不属于源数据库的保留字,该方法具体为:应用程序执行SQL语句;驱动层对SQL语句进行分析,生成具有语义的语法树;依据保留字配置文件对语法树中的对象名进行保留字识别,并采用目标数据库指定的保留字符号对其进行标记;依据保留字标记后的语法树生成新的SQL语句;将新的SQL语句发送给目标数据库。

【技术特征摘要】

【专利技术属性】
技术研发人员:孙峰余院兰
申请(专利权)人:武汉达梦数据库有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1