[发明专利]数据库访问方法和装置有效
申请号: | 201310681688.X | 申请日: | 2013-12-12 |
公开(公告)号: | CN103761240B | 公开(公告)日: | 2017-12-15 |
发明(设计)人: | 朱超;王超;陈飞 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京华沛德权律师事务所11302 | 代理人: | 刘杰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 访问 方法 装置 | ||
1.一种数据库访问方法,其包括:
接收来自客户端的数据库访问请求;
判断所述客户端当前是否具有数据库连接;
在所述客户端当前不具有数据库连接的情况下,从连接池中选取数据库连接,并提供给所述客户端;
基于所述客户端当前具有的数据库连接执行所述数据库访问请求,并维护所述客户端对应的锁信息,所述维护所述客户端对应的锁信息在执行所述数据库访问请求之前或之后或并行执行;
在所述数据库访问请求执行完成后,根据存储的所述客户端对应的锁信息判断所述客户端当前是否具有未释放的锁;
如果所述客户端当前具有未释放的锁,则为所述客户端保持所述数据库连接,否则,将所述数据库连接回收至所述连接池中。
2.如权利要求1所述的方法,其中,所述判断所述客户端当前是否具有数据库连接包括:
判断是否记录有与所述客户端对应的连接标识信息;
如果记录有与所述客户端对应的连接标识信息,则所述客户端当前具有数据库连接,否则,所述客户端当前不具有数据库连接。
3.如权利要求2所述的方法,其中,在从连接池中选取数据库连接,并提供给所述客户端后,所述方法还包括:
记录客户端标识与所述选取的数据库连接的连接标识信息的对应关系。
4.如权利要求1或2或3所述的方法,其中,所述锁信息包括:锁名称或者锁的数量或者锁状态标识。
5.如权利要求4所述的方法,其中,所述方法还包括:
在所述数据库访问请求中的SQL语句为加锁的SQL语句的情况下,存储所述加锁的SQL语句的执行而使所述客户端获得的锁的锁名称;
在所述数据库访问请求中的SQL语句为解锁的SQL语句的情况下,从存储的锁名称中删除所述解锁的SQL语句的执行而使所述客户端释放的锁的锁名称。
6.如权利要求5所述的方法,其中,每一客户端分别对应有各自的锁信息记录表,且所述锁名称存储于发送所述数据库访问请求的客户端所对应的锁信息记录表中。
7.如权利要求6所述的方法,其中,每一锁信息记录表分别对应有各自的锁状态标识,且所述锁状态标识表示锁信息记录表为空或者非空。
8.如权利要求7所述的方法,其中,所述方法还包括:
在向锁信息记录表中增加锁名称后,将该锁信息记录表对应的锁状态标识设置为非空;
在从锁信息记录表中删除锁名称后,判断该锁信息记录表是否为空时;
如果该锁信息记录表为空,则将该锁信息记录表对应的锁状态标识设置为空,否则,将该锁信息记录表对应的锁状态标识设置为非空。
9.如权利要求7所述的方法,其中,所述根据存储的所述客户端对应的锁信息判断所述客户端当前是否具有未释放的锁包括:
获取所述客户端对应的锁状态标识,在判断出所述锁状态标识表示锁信息记录表为空时,确定所述客户端当前不具有未释放的锁,否则,确定所述客户端具有未释放的锁。
10.一种数据库访问装置,其包括:
接收模块,适于接收来自客户端的数据库访问请求;
判断模块,适于判断所述客户端当前是否具有数据库连接;
选取连接模块,适于在所述客户端当前不具有数据库连接的情况下,从连接池中选取数据库连接,并提供给所述客户端;
处理模块,适于基于所述客户端当前具有的数据库连接执行所述数据库访问请求,并维护所述客户端对应的锁信息,所述维护所述客户端对应的锁信息在执行所述数据库访问请求之前或之后或并行执行;
连接回收模块,适于在所述数据库访问请求执行完成后,根据存储的所述客户端对应的锁信息判断所述客户端当前是否具有未释放的锁,如果所述客户端当前具有未释放的锁,则为所述客户端保持所述数据库连接,否则,将所述数据库连接回收至所述连接池中。
11.如权利要求10所述的装置,其中,所述判断模块还适于:
判断是否记录有与所述客户端对应的连接标识信息;
如果记录有与所述客户端对应的连接标识信息,则所述客户端当前具有数据库连接,否则,所述客户端当前不具有数据库连接。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310681688.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:车载语音控制设备
- 下一篇:七轴联动数控砂带磨抛机床