一种基于cli将应用程序变量绑定到参数标记的方法和装置的制造方法

文档序号:9826127阅读:162来源:国知局
一种基于cli将应用程序变量绑定到参数标记的方法和装置的制造方法
【技术领域】
[0001]本发明涉及数据库编程,并且尤其涉及基于CLI将应用程序变量绑定到参数标记的方法和装置。
【背景技术】
[0002]结构化查询语言(Structured Query Language,SQL)是用于操纵数据库对象和它们包含的数据的一种标准语言。但是,由于SQL没有过程语言的性质,通常是将高级编程语言的决策和顺序控制与SQL的数据存储、操纵和检索功能相结合来开发数据库应用程序。
[0003]—些方法将SQL与高级编程语言相结合,被称为嵌入式SQL编程的方法是将SQL语句直接嵌入到用于创建应用程序的高级编程语言源代码文件中。然而,这种编程技术有一系列潜在的劣势,比如SQL语句与应用程序的交互能力比较差;并且由于不同的数据库所支持的SQL语句并不完全兼容,这会导致嵌入式SQL程序的可移植性差,导致所开发的应用程序缺乏互操作性。
[0004]CLI (Call Level Interface,调用级接口)是一种基于C/C++的软件编程接口标准,它定义了应用程序如何使用统一的接口来向数据库管理系统发送SQL请求以及处理数据库管理系统返回的查询结果集。

【发明内容】

[0005]本发明公开基于CLI将应用程序变量绑定到参数标记的方法,包括:
在步骤101中,解析SQL语句,获取要操作的表名;
在步骤102中,根据获取的表名,通过已连接的数据库获取对应的表字段信息;
在步骤103中,根据获取的表字段信息,根据表字段类型与高级语言的数据类型的对应关系,生成对应的高级语言表数据结构;
在步骤104中,继续解析SQL语句,根据SQL操作的语法,获取参数标记字段名,并且根据高级语言表数据结构确定该参数标记字段类型对应的高级语言数据类型,以及利用确定的高级语言数据类型设置绑定函数中的参数以执行绑定。
[0006]可选地,所述参数标记是输入参数标记。
[0007]可选地,所述参数标记是输出参数标记。
[0008]可选地,在步骤104中,在确定一个参数标记的高级语言数据类型之后,立即调用绑定函数执行绑定。
[0009]可选地,在步骤104中,在确定所有参数标记的高级语言数据类型之后,调用绑定函数执行所有绑定。
[0010]本发明公开基于CLI将应用程序变量绑定到参数标记的装置,包括:
第一装置,用于解析SQL语句,获取要操作的表名;
第二装置,用于根据获取的表名,通过已连接的数据库获取对应的表字段信息; 第三装置,用于根据获取的表字段信息,根据表字段类型与高级语言的数据类型的对应关系,生成对应的高级语言表数据结构;
第四装置,用于继续解析SQL语句,根据SQL操作的语法,获取参数标记字段名,并且根据高级语言表数据结构确定该参数标记字段类型对应的高级语言数据类型,以及利用确定的高级语言数据类型设置绑定函数中的参数以执行绑定。
[0011 ] 可选地,所述参数标记是输入参数标记。
[0012]可选地,所述参数标记是输出参数标记。
[0013]可选地,第四装置用于在确定一个参数标记的高级语言数据类型之后,立即调用绑定函数执行绑定。
[0014]可选地,第四装置用于在确定所有参数标记的高级语言数据类型之后,调用绑定函数执行所有绑定。
[0015]本发明的优势在于使得数据库的SQL语句绑定操作透明化,减少开发人员的工作量。由于能够避免开发人员的重复工作,提高了数据库应用的开发效率和质量。
【附图说明】
[0016]在参照附图阅读了本发明的【具体实施方式】以后,本领域技术人员将会更清楚地了解本发明。本领域技术人员应当理解的是,附图仅仅用于配合【具体实施方式】说明本发明的技术方案,而并非意在对本发明的保护范围构成限制。
[0017]图1是根据本发明实施例的基于CLI将应用程序变量绑定到参数的方法流程示意图。
【具体实施方式】
[0018]基于CLI的数据库应用程序由三部分组成:初始化、事务处理、程序结束。这些任务涉及到的工作可以通过调用一个或多个CLI的API来实现。
[0019]在初始化期间,需要分配(和初始化)处理事务所需的资源,并建立到事务处理任务需要使用的数据源的连接。
[0020]在事务处理期间,通过不同的CLI的函数调用,将查询和操纵数据的SQL语句传递到适当的数据源进行处理。在该过程中,CLI应用程序可以执行以下步骤:分配一个或多个语句句柄;准备和执行一个或多个语句;检索和处理产生的结果;通过提交或回滚终止当前事务;释放分配的所有语句句柄。
[0021]这里,语句句柄是指向数据存储区域的指针,该数据存储区包含单个SQL语句有关的特定信息。语句句柄用于:将应用程序变量绑定到SQL语句中使用的参数标记。准备和提交SQL语句到适当的数据源,以便执行。获得关于SQL语句产生的结果数据集的元数据。从结果数据集中检索(读取)数据。当SQL未能执行时,获得诊断信息。
[0022]SQL语句中的常量和表达式允许使用参数标记代替。参数标记用问号(?)表示,用来指示当执行SQL语句时将在SQL语句中的何处替换一个或多个应用程序变量的当前值。当一个应用程序变量与SQL语句中一个参数标记关联时,就称该变量被“绑定”到该参数标记。
[0023]图1是根据本发明实施例的基于CLI将应用程序变量绑定到参数标记的流程图。
[0024]在步骤101中,解析SQL语句,获取要操作的表名。例如,可以根据SQL操作的类型(SELECT、UPDATE、DELETE、INSERT)来获取数
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1