[发明专利]一种SQL语句的生成方法及装置有效
申请号: | 201711052564.X | 申请日: | 2017-10-30 |
公开(公告)号: | CN110019266B | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 焦惠达 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/242 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sql 语句 生成 方法 装置 | ||
1.一种SQL语句的生成方法,其特征在于,包括:
获取待修改对象、所述待修改对象的每个属性、以及每个属性的属性值;
创建所述待修改对象的快照;
当用户对所述待修改对象进行修改得到已修改对象时,获取所述已修改对象和所述已修改对象的每个属性值;
对所述已修改对象的所有属性进行遍历,得到所述已修改对象的所有可变属性;
依次判断所述已修改对象的每个可变属性的属性值与所述快照中记录的相应属性值相比是否发生改变,得到所述待修改对象中发生改变的属性、以及发生改变的属性的属性值;
根据所述待修改对象中发生改变的属性、以及发生改变的属性的属性值,生成对所述待修改对象进行修改的SQL语句。
2.根据权利要求1所述的方法,其特征在于,在所述获取待修改对象、所述待修改对象的每个属性、以及每个属性的属性值之后,所述方法还包括:
对所述待修改对象中的所有属性进行遍历,判断所述待修改对象中是否存在可变属性;
若是,执行所述创建所述待修改对象的快照;
若否,判定所述待修改对象不能被修改。
3.根据权利要求1所述的方法,其特征在于,所述创建所述待修改对象的快照,包括:
对所述待修改对象中所有属性的属性值进行深拷贝,生成所述待修改对象的快照。
4.根据权利要求1所述的方法,其特征在于,在所述生成对所述待修改对象进行修改的SQL语句之后,所述方法还包括:
将对所述待修改对象进行修改的SQL语句提交到数据库。
5.一种SQL语句的生成装置,其特征在于,包括:
第一获取单元,用于获取待修改对象、所述待修改对象的每个属性、以及每个属性的属性值;
创建单元,用于创建所述待修改对象的快照;
第二获取单元,用于当用户对所述待修改对象进行修改得到已修改对象时,获取所述已修改对象和所述已修改对象的每个属性值;
遍历子单元,用于对所述已修改对象的所有属性进行遍历,得到所述已修改对象的所有可变属性;
判断子单元,用于依次判断所述已修改对象的每个可变属性的属性值与所述快照中记录的相应属性值相比是否发生改变,得到所述待修改对象中发生改变的属性、以及发生改变的属性的属性值;
生成单元,用于根据所述待修改对象中发生改变的属性、以及发生改变的属性的属性值,生成对所述待修改对象进行修改的SQL语句。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
提交单元,用于将对所述待修改对象进行修改的SQL语句提交到数据库。
7.一种存储介质,其特征在于,所述存储介质包括存储的程序,
其中,在所述程序运行时控制所述存储介质所在的设备执行如权利要求1-4中任一项所述的SQL语句的生成方法。
8.一种处理器,其特征在于,所述处理器用于运行程序,
其中,所述程序运行时执行如权利要求1-4中任一项所述的SQL语句的生成方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711052564.X/1.html,转载请声明来源钻瓜专利网。