结构化查询语句的版本控制方法及装置的制造方法_3

文档序号:9787413阅读:来源:国知局
071]4)Content:序列化成json字符串内容的SQL语句和版本描述信息
[0072]5)submitUser:提交用户,提交SQL语句存储请求的用户账号
[0073]6)submitTime:提交时间,接收到SQL语句存储请求的系统时间
[0074]再如图3所示,可将根据SQL语句存储请求提取到的页面标识pageld、页面对象标识objectld、序列化成json字符串内容的SQL语句和版本描述信息的content,分配的版本号svnld以及提交用户submitUser、提交时间submitTime封装在一个对象svn中。在版本控制对象中加入提交用户和提交时间可使得在多人写作场景中分析者可知晓每次提交的SQL语句由哪个用户提交,从而方便查找错误和协同分析。
[0075]创建了该svn对象并缓存在内存之后,则可根据预设的对象关系映射(0RM,0bjectRelat1nal Mapping)将其存储到数据表中。即根据预设的版本控制对象的属性值与所述数据表的属性值的映射关系,将所述版本控制对象的属性值存储到所述数据表中各自对应的字段中。
[0076]例如,可预先创建的ORM的映射配置为,版本控制对象svn对象的svnld映射数据表的svnld字段(At tribute )、版本控制对象svn对象的page Id映射数据表的page Id字段(Attribute)、版本控制对象svn对象的objectId映射数据表的objectId字段(Attribute)、版本控制对象svn对象的content映射数据表的content字段(Attr ibute )、版本控制对象svn对象的submitUser映射数据表的submitUser字段(Attr ibute)以及版本控制对象svn对象的submitTime映射数据表的submitTime字段(Attribute)。则可根据该预先创建的ORM的映射配置将svn的各个属性值映射到字段中,从而完成持久化的存储。
[0077]步骤S106:接收SQL语句版本回滚请求,提取所述SQL语句版本回滚请求携带的语句标识和版本号,在所述数据表中查询与所述语句标识和版本号对应的SQL语句以及版本描述信息。
[0078]分析用户也可通过输入语句标识和版本号来查询特定页面上的特定SQL语句输入框中在某个版本下输入的SQL语句以及相应的版本描述信息。如图4所示,若用户在某个SQL语句输入区域中输入的SQL语句在数据表中已存在版本11,其中版本11的SQL语句与版本5的SQL语句有区别,版本描述信息也不同。则若用户在希望回滚到版本5时,可以版本5和该SQL语句输入区域对应的语句标识作为输入参数生成SQL语句版本回滚请求。服务器接收到该SQL语句版本回滚请求之后,则可以该语句标识和版本5作为参数进行查询,得到相应的json字符串,然后将该json字符串反序列化成json对象,然后提取其中与页面上相应的SQL语句输入框和版本描述信息输入框对应的内容,将其填充到相应的位置,如图4中,版本信息中的任务名称即由版本11的“演示任务XXXXX”回滚到了版本5的“演示任务”,SQL语句也相应得到了回滚。
[0079]优选的,接收SQL语句版本查看请求,提取所述SQL语句版本查看请求携带的语句标识,在所述数据表中查找与所述语句标识对应的版本号以及与该版本号对应的版本描述信息,以列表的形式展示所述版本号以及与该版本号对应的版本描述信息。
[0080]接收SQL语句版本回滚请求的步骤则可具体为:接收通过在所述列表中选中版本号生成的SQL语句版本回滚请求,所述SQL语句版本回滚请求携带的语句标识为所述列表对应的语句标识,所述SQL语句版本回滚请求携带的版本号为选中的版本号。
[0081]也就是说,在页面P的某个SQL语句输入框I处,可展示下拉菜单,该下拉菜单中包含有与页面P和SQL语句输入框I对应的版本号列表,该版本号列表由服务器通过以page ID=P和objectID = I为参数查询数据表得到,其中包含了与PageID = P和objectID = I对应的所有数据项的版本号字段的值。用户可通过在下拉菜单中选择版本号来确定展示的或执行的SQL语句的版本。若用户选择了版本号V,则用户操作的终端根据pageID = P、0bjectID=I和svnID = V生成SQL语句版本回滚请求,服务器即可根据pageID = P、objectID = I^PIsvnID=V为检索条件查找相应的json字符串,然后将该json字符串反序列化成json对象后,将相应的SQL语句和版本描述信息展示在页面P的SQL语句输入框I的位置,从而方便用户查看或再次对数据表中的用户数据进行处理。
[0082]此外,为解决上述提到的传统技术中无法使用SVN工具对通过表单提交的SQL语句进行版本控制的技术问题,在一个实施例中,如图5所示,特提出了一种结构化查询语句的版本控制装置,包括:SQL语句接收模块102、SQL语句存储模块104和SQL语句回滚模块106,其中:
[0083]SQL语句接收模块102,用于接收结构化查询SQL语句存储请求,提取所述SQL语句存储请求携带的SQL语句、版本描述信息以及对应的语句标识。
[0084]SQL语句存储模块104,用于为所述语句标识分配递增的版本号,将所述语句标识、SQL语句、版本描述信息以及所述分配的版本号对应存储到数据表中。
[0085]SQL语句回滚模块106,用于接收SQL语句版本回滚请求,提取所述SQL语句版本回滚请求携带的语句标识和版本号,在所述数据表中查询与所述语句标识和版本号对应的SQL语句以及版本描述信息。
[0086]在本实施例中,SQL语句接收模块102还用于获取所述SQL语句存储请求对应的页面的页面标识以及在所述页面中对应的页面对象的对象标识;将页面标识和所述对象标识作为所述SQL语句存储请求携带的SQL语句对应的语句标识。
[0087]在本实施例中,SQL语句存储模块104还用于将所述提取的SQL语句以及版本描述信息序列化成json对象。
[0088]在本实施例中,SQL语句存储模块104还用于以所述语句标识、版本号以及提取的SQL语句序列化成的json对象作为属性值生成相应的版本控制对象,将所述版本控制对象缓存在内存中。
[0089]在本实施例中,SQL语句存储模块104还用于根据预设的版本控制对象的属性值与所述数据表的属性值的映射关系,将所述版本控制对象的属性值存储到所述数据表中各自对应的字段中。
[0090]在本实施例中,SQL语句存储模块104还用于获取所述SQL语句存储请求对应的提交用户标识以及提交时间,将所述提交用户标识以及提交时间作为属性值添加到所述版本控制对象中。
[0091 ]在本实施例中,SQL语句接收模块106还用于接收SQL语句版本查看请求,提取所述SQL语句版本查看请求携带的语句标识,在所述数据表中查找与所述语句标识对应的版本号以及与该版本号对应的版本描述信息,以列表的形式展示所述版本号以及与该版本号对应的版本描述信息;接收通过在所述列表中选中版本号生成的SQL语句版本回滚请求,所述SQL语句版本回滚请求携带的语句标识为所述列表对应的语句标识,所述SQL语句版本回滚请求携带的版本号为选中的版本号。
[0092]实施本发明实施例,将具有如下有益效果:
[0093]采用了上述结构化查询语句的版本控制方法及装置之后,用户可通过页面表单提交在同一个SQL语句输入位置输入的多次SQL语句,而服务器可为该多个版本的SQL语句各自分配相应的版本号,然后再依据版本号将该多个版本的SQL语句存储在数据库中。在需要对SQL语句进行回滚时,则根据相应的版本号即可获取相应版本的SQL语句。与传统技术相比,不需要使用SVN工具,服务器也不需要先将表单数据提取后生成文件存储,然后再通过SVN工具的接口函数进行版本管理,从而实现了对表单提交的SQL语句的版本管理
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1