【技术实现步骤摘要】
解析结构化操作语句的方法和装置
本申请涉及数据库
,尤其涉及一种解析结构化操作语句的方法和装置。
技术介绍
在接收到用户输入的结构化操作语句时,数据库管理系统首先对结构化操作语句进行解析,以判断结构化操作语句是否是一个合法的、可以规约到数据库服务器可以识别的语法;如果不能规约到数据库服务器可以识别的语法,则数据库管理系统报告语法解析错误。结构化操作语句的解析分为词法解析和语法解析两部分;词法解析用于负责识别标识符和关键词,并将识别到的各个关键词和标识符都生成一记号并传递给语法解析;语法解析根据词法解析输出的元素和语法规则尝试规约,并在规约成功是输出语法解析树。为了能够实现词法解析和语法解析,每个数据库服务器均会确定保留关键字,发布关键字列表作为语法规则的一部分。因为不同的数据库服务器提供的结构化查询范围不同,语法规则不同,其保留关键字列表也会不同。在某个数据库服务器中并不是保留关键字的字符,在另一个数据库服务器中可能是保留关键字。某一支持一数据库服务器(源数据库服务器)语法规则的应用程序使用的底 ...
【技术保护点】
1.一种解析结构化操作语句的方法,其特征在于,包括:/n获取结构化操作语句;所述结构化操作语句根据第一语法规则生成,用于输入到采用第二语法规则的数据库服务器;/n在所述结构化操作语句中的一对象标识符为所述第二语法规则中的保留关键字的情况下,采用自定义字符串替换所述保留关键字,作为所述数据库服务器的临时保留关键字;/n对所述结构化操作语句进行解析。/n
【技术特征摘要】
1.一种解析结构化操作语句的方法,其特征在于,包括:
获取结构化操作语句;所述结构化操作语句根据第一语法规则生成,用于输入到采用第二语法规则的数据库服务器;
在所述结构化操作语句中的一对象标识符为所述第二语法规则中的保留关键字的情况下,采用自定义字符串替换所述保留关键字,作为所述数据库服务器的临时保留关键字;
对所述结构化操作语句进行解析。
2.根据权利要求1所述的解析结构化操作语句的方法,其特征在于,所述采用自定义字符串替换所述保留关键字包括:
根据所述保留关键字查询第一关键字替换表,获取对应的预定替换字符串;
在所述预定替换字符串与所述结构化操作语句中的其他元素不冲突的情况下,将所述预定替换字符串作为所述自定义字符串,替换所述保留关键字。
3.根据权利要求2所述的解析结构化操作语句的方法,其特征在于,还包括:
在所述预定替换字符串与所述结构化操作语句中的其他元素冲突的情况下,生成一随机字符串作为所述自定义字符串,替换所述保留关键字。
4.根据权利要求2所述的解析结构化操作语句的方法,其特征在于,
所述第一关键字替换表根据所述数据库服务器对应的保留关键字字母排序;
所述根据所述保留关键字查询第一关键字替换表,包括:
基于所述保留关键字,采用二分查找方法查询所述第一关键字替换表。
5.根据权利要求1-4任一项所述的解析结构化操作语句的方法,其特征在于,在获取结构化操作语句后,还包括:
将所述结构化操作语句中根据第一语法规则使用的保留关键字,替换为根据第二语法规则使用的、对应相同涵义的保留关键字。
...
【专利技术属性】
技术研发人员:王建华,冷建全,
申请(专利权)人:北京人大金仓信息技术股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。