SQL语句生成方法、装置及计算机可读存储介质与流程

文档序号:17080340发布日期:2019-03-09 00:11阅读:137来源:国知局
SQL语句生成方法、装置及计算机可读存储介质与流程

本发明涉及计算机技术领域,尤其涉及一种sql语句生成方法、装置及计算机可读存储介质。



背景技术:

现有的一些业务项目管理中,经常涉及到对数据库数据的处理,例如存取数据以及查询、更新和管理数据库等,这些数据处理逻辑都需要通过sql(structuredquerylanguage,结构化查询语言)语句来实现,并且数据处理逻辑的实现大多涉及到行业知识,需要开发人员了解业务需求,当有新的业务需求时,就需要重新编写对应的sql语句来实现对应的逻辑,不仅需要专门的开发人员手动编写大量的sql语句,还会面临编译报错的现象,导致sql语句的编写效率低下。



技术实现要素:

本发明提供一种sql语句生成方法、装置及计算机可读存储介质,其主要目的在于提高sql语句的编写效率。

为实现上述目的,本发明还提供一种sql语句生成方法,该方法包括:

当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区;

接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;

将所述代码发送至所述客户端以在所述代码区域展示,确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数;

在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码;

重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。

可选地,所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤包括:

当接收到客户端发送的sql语句创建指令时,确定所述sql语句创建指令对应的数据库类型;

根据预先设置的数据库类型与sql语句编辑界面的映射关系,生成与所述数据库类型匹配的sql语句编辑界面并发送至所述客户端显示。

可选地,所述sql语句编辑界面上还包括sql语句模板选择区域,所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤之后,所述方法还包括:

当接收到所述客户端基于所述sql语句模板选择区域发送的模板选择指令,获取与所述模板选择指令对应的预设sql语句模板的代码,并基于所述代码生成参数设置界面发送至所述客户端,其中,所述预设sql语句模板的代码中待输入的关键字段用占位符替代;

接收用户基于所述参数设置界面输入的关键字段,使用所述关键字段替换所述预设sql语句模板中对应的占位符,生成sql语句。

可选地,所述预设sql语句模板包括标准sql语句模板和存储过程模板。

可选地,所述根据缓存区域中组合的代码生成sql语句的步骤之后,所述方法还包括:

按照预设的多个测试规则对生成的sql语句进行检测,判断所述sql语句的逻辑是否正确;

若逻辑正确,则存储所述sql语句;

若逻辑错误,则确定发生逻辑错误的原子语句,并基于该原子语句向客户端发送提示信息,以供用户根据提示信息对sql语句进行修改。

此外,为实现上述目的,本发明还提供一种sql语句生成装置,该装置包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的sql语句生成程序,所述sql语句生成程序被所述处理器执行时实现如下步骤:

当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区;

接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;

将所述代码发送至所述客户端以在所述代码区域展示,确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数;

在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码;

重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。

可选地,所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤包括:

当接收到客户端发送的sql语句创建指令时,确定所述sql语句创建指令对应的数据库类型;

根据预先设置的数据库类型与sql语句编辑界面的映射关系,生成与所述数据库类型匹配的sql语句编辑界面并发送至所述客户端显示。

可选地,所述sql语句编辑界面上还包括sql语句模板选择区域,所述sql语句生成程序还可被处理器执行,以在所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤之后,还实现如下步骤:

当接收到所述客户端基于所述sql语句模板选择区域发送的模板选择指令,获取与所述模板选择指令对应的预设sql语句模板的代码,并基于所述代码生成参数设置界面发送至所述客户端,其中,所述预设sql语句模板的代码中待输入的关键字段用占位符替代;

接收用户基于所述参数设置界面输入的关键字段,使用所述关键字段替换所述预设sql语句模板中对应的占位符,生成sql语句。

可选地,所述sql语句生成程序还可被处理器执行,以在所述根据缓存区域中组合的代码生成sql语句的步骤之后,还实现如下步骤:

按照预设的多个测试规则对生成的sql语句进行检测,判断所述sql语句的逻辑是否正确;

若逻辑正确,则存储所述sql语句;

若逻辑错误,则确定发生逻辑错误的原子语句,并基于该原子语句向客户端发送提示信息,以供用户根据提示信息对sql语句进行修改。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有sql语句生成程序,所述sql语句生成程序可被一个或者多个处理器执行,以实现如上所述的sql语句生成方法的步骤。

本发明提出的sql语句生成方法、装置及计算机可读存储介质,当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至客户端显示,其中,sql语句编辑界面包括代码区域和编辑组件区;接收客户端基于sql语句编辑界面触发的组件选择指令,确定组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;将代码发送至客户端以在代码区域展示,确定用户基于sql语句编辑界面为原子语句设置的语句参数;在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在客户端的代码区域同步显示组合得到的代码;重复执行上述步骤,直至接收到客户端基于sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。通过本发明的方案,在明确数据处理需求的情况下,可以在sql语句编辑界面上选择需要的原子语句对应的控件并设置语句参数,即可自动且准确地生成sql语句,提高了sql语句的编写效率。

附图说明

图1为本发明一实施例提供的sql语句生成方法的流程示意图;

图2为本发明一实施例提供的sql语句生成装置的内部结构示意图;

图3为本发明一实施例提供的sql语句生成装置中sql语句生成程序的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种sql语句生成方法。参照图1所示,为本发明一实施例提供的sql语句生成方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。

在本实施例中,sql语句生成方法包括:

步骤s10,当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区。

本发明实施例中,用户可以通过客户端或者web界面编写sql语句,客户端或者浏览器与服务器之间建立远程通讯连接。当用户需要创建数据处理逻辑,即需要创建sql语句时,通过客户端向服务器发送sql语句创建指令,服务器在接收到该指令时,生成sql语句编辑界面发送至客户端展示,该sql语句编辑界面上包含有代码区域和编辑组件区,代码区域用于同步展示sql语句代码,编辑组件区中有各种预先设置的原子语句的控件。

具体地,sql是用于执行查询的语法,也可以用于更新、插入和删除记录的语法。其中,sql主要包括dml和ddl。dml(datamanipulationlanguage,数据操纵语言),负责对数据库对象运行数据访问工作的指令集,以insert、update、delete三种指令为核心,分别代表插入、更新与删除。ddl(datadefinitionlanguage,模式数据定义语言)的主要命令有create(创建)、alter(修改)、drop(删除)等,ddl主要是用在定义或改变表结构、数据类型、表之间的链接和约束等工作上,大多在建表时使用。

步骤s20,接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码。

步骤s30,将所述代码发送至所述客户端以在所述代码区域展示,确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数。

步骤s40,在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码。

预先创建原子语句存储至服务器的组件库中,在编辑组件区设置这些原子语句的控件,原子语句可以是如逻辑if、逻辑casewhen、汇总函数以及各种计算函数等sql语句中常用的语法。用户通过点击预设的原子语句的控件可以实现生成变量、定义游标等sql语句。用户通过点击编辑组件区的控件触发组件选择指令选择对应的原子语句,服务器在接收到组件选择指令时,确定该指令对应的原子语句,从组件库中获取对应的原子语句的代码放入缓存中,用户可以通过这种方式选择多个原子语句并为其设置语句参数发送至服务器,服务器根据用户选择的原子语句和设置的语句参数在缓存中将这些代码拼接组合成为一段完整的sql语句,同时,在用户选择原子语句以及设置语句参数时,将原子语句的代码同步的显示待客户端的代码区域。

步骤s50,重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。

用户可以按照上述过程重复,直至完成全部sql语句的编写。

进一步地,所述sql语句编辑界面上还包括sql语句模板选择区域,用户可以通过该区域选择预设sql语句模板,其中,预设sql语句模板包括标准sql语句模板和存储过程模板,在步骤s10之后,该方法还包括如下步骤:

当接收到客户端基于所述sql语句模板选择区域发送的模板选择指令,获取与所述模板选择指令对应的预设sql语句模板的代码,并基于所述代码生成参数设置界面发送至所述客户端,其中,所述预设sql语句模板的代码中待输入的关键字段用占位符替代;

接收用户基于所述参数设置界面输入的关键字段,使用所述关键字段替换所述预设sql语句模板中对应的占位符,生成sql语句。

例如,用户要从数据表a中查询数据,则需要编写数据查询sql语句。此时可以选择预设sql语句模板,该模板中的查询对象和数据表名称等关键字段使用占位符替代,并且在参数设置界面上设置有查询对象和数据表名称的输入框,用户输入要查询的字段和作为查询对象的数据表的名称,服务器接收到这些数据后,使用用户输入的上述字段对应地替换掉预设sql语句模板中的占位符生成sql语句。此外,系统还可以与目标数据库对接,数据表名称的输入框可以提供下拉、勾选或点击等方式供用户选择对接的数据库中的数据表名称。可以理解的是,用户在编写一个数据处理逻辑时,可以使用一个或者多个预设sql语句模板进行组合。或者,用户要编写一个存储过程,可以直接获取预先编写好的存储过程模板,用户通过指定存储过程的名称并给出参数,即可生成一个可执行的存储过程。

此外,由于对于不同的数据库来说,比如oracle,mssql,mysql等,他们在sql语法上会存在细微的区别,内置函数也会稍有不同。因此,本方案若要能够支持不同种类的数据库的sql语句的编写,需要考虑到数据库方言的不同。故,预先创建原子语句库时,需要针对每一种数据库创建符合其方言的原子语句,同时预先设置与其方言匹配的sql语句模板。

因此,在一些实施例中步骤s10可以包括如下细化步骤:

当接收到客户端发送的sql语句创建指令时,确定所述sql语句创建指令对应的数据库类型;

根据预先设置的数据库类型与sql语句编辑界面的映射关系,生成与所述数据库类型匹配的sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区。

进一步地,用户在使用预设sql语句模板或者原子语句编写语句时,也可能出现编译错误的问题,因此,还可以进一步地对编译完成的语句进行测试。预先设置测试规则,这些测试规则可以实现对编写好的sql语句的逻辑检测,例如检测查询语句的开头有没有索引、union连接时的数据量、where的条件有没有唯一标志等。具体地,在其他实施例中,根据缓存区域中组合的代码生成sql语句之后,该方法还包括如下步骤:

按照预设的多个测试规则对生成的sql语句进行检测,判断所述sql语句的逻辑是否正确;若逻辑正确,则存储所述sql语句;若逻辑错误,则确定发生逻辑错误的原子语句,并基于该原子语句向客户端发送提示信息,以供用户根据提示信息对sql语句进行修改。

本实施例提出的sql语句生成方法,当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至客户端显示,其中,sql语句编辑界面包括代码区域和编辑组件区;接收客户端基于sql语句编辑界面触发的组件选择指令,确定组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;将代码发送至客户端以在代码区域展示,确定用户基于sql语句编辑界面为原子语句设置的语句参数;在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在客户端的代码区域同步显示组合得到的代码;重复执行上述步骤,直至接收到客户端基于sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。通过本发明的方案,在明确数据处理需求的情况下,可以在sql语句编辑界面上选择需要的原子语句对应的控件并设置语句参数,即可自动且准确地生成sql语句,提高了sql语句的编写效率。

本发明还提供一种sql语句生成装置。参照图2所示,为本发明一实施例提供的sql语句生成装置的内部结构示意图。

在本实施例中,sql语句生成装置1可以是pc(personalcomputer,个人电脑),也可以是智能手机、平板电脑、便携计算机等终端设备。该sql语句生成装置1至少包括存储器11、处理器12,网络接口13以及通信总线。

其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是sql语句生成装置1的内部存储单元,例如该sql语句生成装置1的硬盘。存储器11在另一些实施例中也可以是sql语句生成装置1的外部存储设备,例如sql语句生成装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器11还可以既包括sql语句生成装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于sql语句生成装置1的应用软件及各类数据,例如sql语句生成程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行sql语句生成程序01等。

网络接口13可选的可以包括标准的有线接口、无线接口(如wi-fi接口),通常用于在该装置1与其他电子设备之间建立通信连接。

通信总线用于实现这些组件之间的连接通信。

可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(display)、输入单元比如键盘(keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在sql语句生成装置1中处理的信息以及用于显示可视化的用户界面。

图2仅示出了具有组件11-13以及sql语句生成程序01的sql语句生成装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对sql语句生成装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

在图2所示的装置1实施例中,存储器11中存储有sql语句生成程序01;处理器12执行存储器11中存储的sql语句生成程序01时实现如下步骤:

当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区。

接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码。

将所述代码发送至所述客户端以在所述代码区域展示,确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数。

在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码。

重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。

本发明实施例中,用户可以通过客户端或者web界面编写sql语句,客户端或者浏览器与服务器之间建立远程通讯连接。当用户需要创建数据处理逻辑,即需要创建sql语句时,通过客户端向服务器发送sql语句创建指令,服务器在接收到该指令时,生成sql语句编辑界面发送至客户端展示,该sql语句编辑界面上包含有代码区域和编辑组件区,代码区域用于同步展示sql语句代码,编辑组件区中有各种预先设置的原子语句的控件。

具体地,sql是用于执行查询的语法,也可以用于更新、插入和删除记录的语法。其中,sql主要包括dml和ddl。dml(datamanipulationlanguage,数据操纵语言),负责对数据库对象运行数据访问工作的指令集,以insert、update、delete三种指令为核心,分别代表插入、更新与删除。ddl(datadefinitionlanguage,模式数据定义语言)的主要命令有create(创建)、alter(修改)、drop(删除)等,ddl主要是用在定义或改变表结构、数据类型、表之间的链接和约束等工作上,大多在建表时使用。

预先创建原子语句存储至服务器的组件库中,在编辑组件区设置这些原子语句的控件,原子语句可以是如逻辑if、逻辑casewhen、汇总函数以及各种计算函数等sql语句中常用的语法。用户通过点击预设的原子语句的控件可以实现生成变量、定义游标等sql语句。用户通过点击编辑组件区的控件触发组件选择指令选择对应的原子语句,服务器在接收到组件选择指令时,确定该指令对应的原子语句,从组件库中获取对应的原子语句的代码放入缓存中,用户可以通过这种方式选择多个原子语句并为其设置语句参数发送至服务器,服务器根据用户选择的原子语句和设置的语句参数在缓存中将这些代码拼接组合成为一段完整的sql语句,同时,在用户选择原子语句以及设置语句参数时,将原子语句的代码同步的显示待客户端的代码区域。用户可以按照上述过程重复,直至完成全部sql语句的编写。

进一步地,所述sql语句编辑界面上还包括sql语句模板选择区域,用户可以通过该区域选择预设sql语句模板,其中,预设sql语句模板包括标准sql语句模板和存储过程模板,sql语句生成程序01还可被处理器12执行,以在所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤之后,还实现如下步骤:

当接收到客户端基于所述sql语句模板选择区域发送的模板选择指令,获取与所述模板选择指令对应的预设sql语句模板的代码,并基于所述代码生成参数设置界面发送至所述客户端,其中,所述预设sql语句模板的代码中待输入的关键字段用占位符替代;

接收用户基于所述参数设置界面输入的关键字段,使用所述关键字段替换所述预设sql语句模板中对应的占位符,生成sql语句。

例如,用户要从数据表a中查询数据,则需要编写数据查询sql语句。此时可以选择预设sql语句模板,该模板中的查询对象和数据表名称等关键字段使用占位符替代,并且在参数设置界面上设置有查询对象和数据表名称的输入框,用户输入要查询的字段和作为查询对象的数据表的名称,服务器接收到这些数据后,使用用户输入的上述字段对应地替换掉预设sql语句模板中的占位符生成sql语句。此外,系统还可以与目标数据库对接,数据表名称的输入框可以提供下拉、勾选或点击等方式供用户选择对接的数据库中的数据表名称。可以理解的是,用户在编写一个数据处理逻辑时,可以使用一个或者多个预设sql语句模板进行组合。或者,用户要编写一个存储过程,可以直接获取预先编写好的存储过程模板,用户通过指定存储过程的名称并给出参数,即可生成一个可执行的存储过程。

此外,由于对于不同的数据库来说,比如oracle,mssql,mysql等,他们在sql语法上会存在细微的区别,内置函数也会稍有不同。因此,本方案若要能够支持不同种类的数据库的sql语句的编写,需要考虑到数据库方言的不同。故,预先创建原子语句库时,需要针对每一种数据库创建符合其方言的原子语句,同时预先设置与其方言匹配的sql语句模板。

因此,在一些实施例中,当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示的步骤可以包括如下细化步骤:

当接收到客户端发送的sql语句创建指令时,确定所述sql语句创建指令对应的数据库类型;

根据预先设置的数据库类型与sql语句编辑界面的映射关系,生成与所述数据库类型匹配的sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区。

进一步地,用户在使用预设sql语句模板或者原子语句编写语句时,也可能出现编译错误的问题,因此,还可以进一步地对编译完成的语句进行测试。预先设置测试规则,这些测试规则可以实现对编写好的sql语句的逻辑检测,例如检测查询语句的开头有没有索引、union连接时的数据量、where的条件有没有唯一标志等。具体地,在其他实施例中,sql语句生成程序01还可被处理器12执行,以在所述当接收到客户端发送的sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示之后,还实现如下步骤:

按照预设的多个测试规则对生成的sql语句进行检测,判断所述sql语句的逻辑是否正确;若逻辑正确,则存储所述sql语句;若逻辑错误,则确定发生逻辑错误的原子语句,并基于该原子语句向客户端发送提示信息,以供用户根据提示信息对sql语句进行修改。

本实施例提出的sql语句生成装置,当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至客户端显示,其中,sql语句编辑界面包括代码区域和编辑组件区;接收客户端基于sql语句编辑界面触发的组件选择指令,确定组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;将代码发送至客户端以在代码区域展示,确定用户基于sql语句编辑界面为原子语句设置的语句参数;在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在客户端的代码区域同步显示组合得到的代码;重复执行上述步骤,直至接收到客户端基于sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。通过本发明的方案,在明确数据处理需求的情况下,可以在sql语句编辑界面上选择需要的原子语句对应的控件并设置语句参数,即可自动且准确地生成sql语句,提高了sql语句的编写效率。

可选地,在其他的实施例中,sql语句生成程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述sql语句生成程序在sql语句生成装置中的执行过程。

例如,参照图3所示,为本发明sql语句生成装置一实施例中的sql语句生成程序的程序模块示意图,该实施例中,sql语句生成程序01可以被分割为数据发送模块10、代码获取模块20、参数确定模块30和代码组合模块40,示例性地:

数据发送模块10用于:当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区;

代码获取模块20用于:接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;

所述数据发送模块10还用于:将所述代码发送至所述客户端以在所述代码区域展示;

参数确定模块30用于:确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数;

代码组合模块40用于:在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码;

上述模块重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,代码组合模块40根据缓存区域中组合的代码生成sql语句。

上述数据发送模块10、代码获取模块20、参数确定模块30和代码组合模块40等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有sql语句生成程序,所述sql语句生成程序可被一个或多个处理器执行,以实现如下操作:

当接收到客户端发送的结构化查询语言sql语句创建指令时,生成sql语句编辑界面并发送至所述客户端显示,其中,所述sql语句编辑界面包括代码区域和编辑组件区;

接收客户端基于所述sql语句编辑界面触发的组件选择指令,确定所述组件选择指令对应的原子语句,从预设组件库中获取与该原子语句的代码;

将所述代码发送至所述客户端以在所述代码区域展示,确定用户基于所述sql语句编辑界面为所述原子语句设置的语句参数;

在缓存区域中对设置了语句参数的原子语句的代码进行组合,并在所述客户端的代码区域同步显示组合得到的代码;

重复执行上述步骤,直至接收到所述客户端基于所述sql语句编辑界面发送的编辑完成指令,根据缓存区域中组合的代码生成sql语句。

本发明计算机可读存储介质具体实施方式与上述sql语句生成装置和方法各实施例基本相同,在此不作累述。

需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1