一种基于TDS协议的数据库访问方法和系统技术方案

技术编号:26791675 阅读:17 留言:0更新日期:2020-12-22 17:07
本发明专利技术公开了一种基于TDS协议的数据库访问方法和系统,通过API(应用程序接口)的方式给使用者调用以访问数据库,提高了读写数据库的效率。其技术方案为:步骤1:客户端预登录服务器;步骤2:客户端登录服务器;步骤3:客户端根据数据库指令向服务器发起添加远程过程调用的请求并由服务器将请求的响应返回给客户端;步骤4:客户端向服务器发起执行远程过程调用的请求并由服务器将请求的响应返回给客户端。

【技术实现步骤摘要】
一种基于TDS协议的数据库访问方法和系统
本专利技术涉及一种数据库访问的实现方法,具体涉及一种基于TDS协议的数据库访问技术,可应用于MSSQL数据库的实现中。
技术介绍
在金融行业中,委托的延迟大小十分重要,通常都是各个金融系统中的最主要的性能指标,金融领域涉及大量的数据库读写的操作,而传统基于MSSQL官方驱动的读写库方式存在毛刺大,兼容性等问题,这就对委托延迟造成了不利的影响。目前,业界亟待一种新的数据库访问技术,来解决官方驱动读写库方式的性能问题,从而减小委托的延迟。
技术实现思路
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。本专利技术的目的在于解决上述问题,提供了一种基于TDS协议的数据库访问方法和系统,通过API(应用程序接口)的方式给使用者调用以访问数据库,提高了读写数据库的效率。本专利技术的技术方案为:本专利技术揭示了一种基于TDS协议的数据库访问方法,方法包括:步骤1:客户端预登录服务器;步骤2:客户端登录服务器;步骤3:客户端根据数据库指令向服务器发起添加远程过程调用的请求并由服务器将请求的响应返回给客户端;步骤4:客户端向服务器发起执行远程过程调用的请求并由服务器将请求的响应返回给客户端。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,步骤1进一步包括:客户端向服务器发出预登录请求,请求内容包括:与服务器协商包括使用版本,加密与否在内的环境设置;服务器反馈给客户端预登录响应。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,步骤2进一步包括:客户端先向服务器发出登录请求,请求与服务器端的连接,请求内容包括用户名、密码在内的用户信息;服务器向客户端反馈登录响应,响应内容包括名称、TDS版本号在内的服务器端信息。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,步骤3中的数据库指令是数据库的SQL命令或者批处理命令;远程过程调用是指远程存储过程的调用,包括在数据库中查询数据及插入数据至数据库的操作。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,步骤4中,如果客户端的请求返回的结果是数据,则先返回列的元数据,再返回每一行数据。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,服务器和客户端之间的数据传输是异步传输,数据传输的最小单位是TDS数据包,一条消息对应一个或者多个数据包。根据本专利技术的基于TDS协议的数据库访问方法的一实施例,TDS协议的数据包由报头和相关数据两部分组成;TDS数据包报头结构包括字段、当前消息状态、数据包长度、服务端进程ID号、数据包计数、当前未使用。本专利技术揭示了一种基于TDS协议的数据库访问系统,包括:处理器;以及存储器,所述存储器被配置为存储一系列计算机可执行的指令以及与所述一系列计算机可执行的指令相关联的计算机可访问的数据,其中,当所述一系列计算机可执行的指令被所述处理器执行时,使得所述处理器进行如上所述的方法。本专利技术还揭示了一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质上存储有一系列计算机可执行的指令,当所述一系列可执行的指令被计算装置执行时,使得计算装置进行如上所述的方法。本专利技术对比现有技术有如下的有益效果:本专利技术将TDS协议应用到涉及金融行业的数据库访问中,借助TDS协议的优点以及异步方式传输数据,使得读取数据库数据的时间比数据库官方驱动快一倍,写入数据库数据的时间略优于数据库的官方驱动。附图说明在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本专利技术的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。图1示出了本专利技术的基于TDS协议的数据库访问方法的一实施例的流程图。具体实施方式以下结合附图和具体实施例对本专利技术作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本专利技术的保护范围进行任何限制。图1示出了本专利技术的基于TDS协议的数据库访问方法的一实施例的实现流程。在描述本专利技术的访问方法的实施步骤之前,先简单叙述TDS(TabularDataStream)协议的原理。TDS协议是一种应用程序层的协议,用来在数据库服务器和客户端之间转移数据。数据库表格数据流TDS协议描述了两个计算机之间如何传输数据的规则,它定义了传输信息的类型和传输的顺序。TDS协议是建立在TCP/IP之上的,包含在TCP数据段内,TDS用1433端口进行数据库通信。TDS具体版本如下表所示,目前使用的是7.3.B的版本,SQLServer向下兼容各个版本的TDS。TDSversionSQLServerversion7.0SQLServer7.07.1SQLServer20007.1Revision1SQLServer2000SP17.2SQLServer20057.3.ASQLServer20087.3.BSQLServer2008R27.4SQLServer2012TDS是一个以标志为基础的协议,一个标志是一个单个的位值,它表明接下来的数据和值的格局,在一个客户端和数据库服务器间的每一个信息交换包括一个标志,它描述了包含在信息中的数据。TDS协议的功能包括:(1)建立与服务器之间的连接;(2)请求数据和服务器的情况;(3)接收数据,错误信息和其他服务器结果;(4)请求存储过程;(5)对连接提供有序的关闭。TDS协议的特点:(1)TDS是传送规则表格数据的专用协议;(2)与传送的语言无关;(3)与传送的数据无关(长度、字节顺序);(4)与具体的网络或硬件平台无关。TDS协议消息分为客户端消息和服务器消息两类。如图1所示,本实施例的基于TDS协议的数据库访问方法的实施步骤详述如下。步骤1:客户端预登录服务器。客户端先向服务器发出预登录请求(Pre-Login),请求内容包括:与服务器协商包括使用版本,加密与否等环境设置。然后服务器反馈给客户端预登录响应(Pre-LoginResponse)。步骤2:客户端登录服务器。客户端先向服务器发出登录请求(Login),请求与服务器端的连接,请求内容包括:用户名、密码在内的用户信息。本文档来自技高网...

【技术保护点】
1.一种基于TDS协议的数据库访问方法,其特征在于,方法包括:/n步骤1:客户端预登录服务器;/n步骤2:客户端登录服务器;/n步骤3:客户端根据数据库指令向服务器发起添加远程过程调用的请求并由服务器将请求的响应返回给客户端;/n步骤4:客户端向服务器发起执行远程过程调用的请求并由服务器将请求的响应返回给客户端。/n

【技术特征摘要】
1.一种基于TDS协议的数据库访问方法,其特征在于,方法包括:
步骤1:客户端预登录服务器;
步骤2:客户端登录服务器;
步骤3:客户端根据数据库指令向服务器发起添加远程过程调用的请求并由服务器将请求的响应返回给客户端;
步骤4:客户端向服务器发起执行远程过程调用的请求并由服务器将请求的响应返回给客户端。


2.根据权利要求1所述的基于TDS协议的数据库访问方法,其特征在于,步骤1进一步包括:
客户端向服务器发出预登录请求,请求内容包括:与服务器协商包括使用版本,加密与否在内的环境设置;
服务器反馈给客户端预登录响应。


3.根据权利要求1所述的基于TDS协议的数据库访问方法,其特征在于,步骤2进一步包括:
客户端先向服务器发出登录请求,请求与服务器端的连接,请求内容包括用户名、密码在内的用户信息;
服务器向客户端反馈登录响应,响应内容包括名称、TDS版本号在内的服务器端信息。


4.根据权利要求1所述的基于TDS协议的数据库访问方法,其特征在于,步骤3中的数据库指令是数据库的SQL命令或者批处理命令;远程过程调用是指远程存储过程的调用,包括在数据库中查询数据及插入数据至数据库的操作。


5.根据权利...

【专利技术属性】
技术研发人员:苏丹张戴伟徐锡财曹俊岭王康贵鲁继东
申请(专利权)人:上海金融期货信息技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1