CN1329852C - 一种实现数据库访问的方法 - Google Patents

一种实现数据库访问的方法 Download PDF

Info

Publication number
CN1329852C
CN1329852C CNB031565883A CN03156588A CN1329852C CN 1329852 C CN1329852 C CN 1329852C CN B031565883 A CNB031565883 A CN B031565883A CN 03156588 A CN03156588 A CN 03156588A CN 1329852 C CN1329852 C CN 1329852C
Authority
CN
China
Prior art keywords
parameter
access
database
visit
sql
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB031565883A
Other languages
English (en)
Other versions
CN1595386A (zh
Inventor
谢清锐
秦红
谢峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031565883A priority Critical patent/CN1329852C/zh
Publication of CN1595386A publication Critical patent/CN1595386A/zh
Application granted granted Critical
Publication of CN1329852C publication Critical patent/CN1329852C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种实现数据库访问的方法,该方法预先设置可由No.7信令的事务处理能力应用部分TCAP协议识别、且用于访问数据库的访问参数及用于返回数据库访问结果的返回参数;客户端在需要访问数据库时,根据访问信息对访问参数赋值,并将对访问参数的赋值结果发送给服务器端;服务器端收到访问数据库的赋值结果后,获取该访问赋值结果中的访问信息,根据该访问信息进行数据库访问操作,根据访问结果对返回参数赋值,并向客户端返回该赋值结果;客户端收到返回的赋值结果后,获取返回赋值结果中的数据库访问结果信息。本发明方法实现了在数据网之间没有建立TCP/IP协议方式的连接时,能够以No.7信令承载方式方便、安全地对远程数据库的访问。

Description

一种实现数据库访问的方法
技术领域
本发明涉及对数据库的访问技术,更确切地说是涉及一种实现数据库访问的方法。
背景技术
数据库作为提供信息的载体,越来越广泛地运用在智能网应用部分(INAP)、移动网络增强定制业务逻辑(CAP,CAMEL应用部分)和无线智能网(WIN)等各个协议领域,对网络中本地数据库的操作可以采用传输控制协议/网际协议(TCP/IP),也可以采用应用编程接口(API),对远程数据库的访问目前主要是通过TCP/IP协议,即以TCP/IP协议承载方式对远程数据库进行访问。
在各个领域中,对远程数据库访问的过程基本类似,下面以INAP协议领域对应的智能网为例。由于智能网的数据库可以设置在业务控制点(SCP)中,也可以保存在业务数据点(SDP)中,这两种保存方法对于远程数据库访问来说,都是由SCF通过SDF对数据库进行访问,因此以业务控制功能(SCF)与业务数据功能(SDF)为例进行说明。
在国内的智能网技术中,SCF通过远程SDF对数据库的访问主要是通过TCP/IP协议实现的,由于TCP/IP协议的中心是网络互联,即要求所有需要互访数据库的网络实现TCP/IP协议方式的互联,因此要求整个智能网中各个区域对应的网络之间实现TCP/IP协议方式的互联。以图1所示的网络为例,上海的区域1、区域2和北京这三个区域对应网络中的数据网相互之间分别实现了TCP/IP协议方式的互联,由于每个数据网的数据库都保存在业务数据单元(SDU)中,因此该数据网互联表现为:每个区域的SCP中的业务控制单元(SCU)分别通过TCP/IP协议连接其他区域的SDP中的SDU。因此每个区域对应网络中的SCU通过TCP/IP协议承载方式可以远程访问其他区域对应网络的SDU中的数据。由于TCP/IP协议支持用于访问数据库的各种参数,所以在以TCP/IP协议承载方式访问数据库时,可以根据用户的需要设置不同的参数。
但是对于目前国内现有的智能网来说,数据网的建设通常都不够到位,即不同区域的数据网之间往往没有实现TCP/IP协议所要求的互联,通常两个数据网之间只支持No.7信令。还以图1提供的网络为例,在数据网建设不到位时各个数据网的连接情况参见图2,上海的区域1和区域2这两个区域对应网络中的数据网之间实现了互联,但是这两个数据网都没有实现与北京对应网络中数据网的互联,在这种情况下,则北京的SCF与上海的SCF均不能以TCP/IP协议承载方式来访问对方的数据库信息。
由于数据网之间往往支持No.7信令,而目前的No.7信令不支持对数据库的访问,包括本地数据库和远程数据库,为了通过No.7信令也能进行数据库的访问,即以No.7信令承载方式实现对数据库的访问,智能网的国际电信联盟-电信技术标准组智能网应用部分能力集(ITU-T INAP CS-2)协议提出了几种主要的操作,包括执行(Execute)、查找(Search)、修改(Modify)、添加(Add)和移动(Remove),通过这些操作可以实现以No.7信令承载方式对数据库的访问。但是,由于ITU-T INAP CS-2协议提出的这些操作主要是从业务开发的角度考虑的,而不是直接为访问数据库提出的,因此,在以No.7信令承载方式对数据库访问时,需要智能网的开发人员编写与本次访问相关的流程。而开发人员要想开发出以No.7信令承载方式对数据库访问的程序,则必须对INAP CS-2的技术非常了解,对本业务的实际使用特性、所要访问的数据网的组网结构等各种情况也很熟悉,还需要对No.7信令技术有比较深的了解,这大大增加了以No.7信令为承载方式对数据库访问的实现难度。另外,由于ITU-T INAP CS-2协议仅定义了Execute、Search、Modify、Add和Remove这几种操作,因此通过No.7信令只能对数据库作这几种操作处理,对数据库访问的限制很大。并且这几个操作是智能网提出的,只能应用在智能网中,无法解决其他网络中远程数据库的访问问题。
另外,由于TCP/IP协议中由传输层和网际层实现对数据库的访问,传输层和网际层分别位于开放系统互联(OSI)七层协议的中间层和较低层,而No.7信令中用于实现对数据库访问的事务处理能力应用部分(TCAP)协议位于OSI的第七层,因此TCP/IP协议在数据网络安全性和稳定性方面都不如No.7信令,而数据库的安全和稳定对于网络来说非常重要。
综上所述,目前通过TCP/IP协议访问数据库的技术在实现远程访问时存在对网络建设的要求很高的问题,且通过TCP/IP协议进行数据库访问不能保证数据网具有更好的安全性和稳定性;通过No.7信令访问数据库的技术由于没有考虑到对业务屏蔽数据库访问的承载方式,因此存在实现困难的问题,该技术还存在对数据库访问的限制很大、只能解决智能网中远程访问数据库的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现数据库访问的方法,能够通过No.7信令能够方便、安全地对数据库进行访问。
为达到以上目的,本发明的技术方案是这样实现的:一种实现数据库访问的方法,该方法包括以下步骤:
a.预先设置可由No.7信令的事务处理能力应用部分TCAP协议识别、且用于访问数据库的访问参数及用于返回数据库访问结果的返回参数;
所述访问参数包括:用于分配已注册的SQL语句的SQL注册索引,用于标识注册SQL语句时间的时间戳,和存储SQL语句中整型变量和字符串变量的可变参数;所述返回参数包括:用于将注册完成的SQL语句设置索引值的SQL注册索引,用于标识注册SQL语句时间的时间戳;
b.客户端在需要访问数据库时,根据访问信息对步骤a中设置的访问参数赋值,并将对访问参数的赋值结果发送给服务器端;且客户端先判断本次访问的SQL语句是否已注册,如果已注册,则对包括SQL注册索引、时间戳及可变参数的访问参数赋值,如果未注册,则对未包括SQL注册索引、时间戳及可变参数的访问参数赋值;
c.服务器端收到访问数据库的赋值结果后,获取该访问赋值结果中的访问信息,根据该访问信息进行数据库访问操作,然后根据访问结果对步骤a中设置的返回参数赋值,并向客户端返回该赋值结果;
d.客户端收到返回的赋值结果后,获取返回赋值结果中的数据库访问结果信息。
所述步骤a中的参数针对数据库访问语句设置,所述访问参数包括:发起访问的设备标识、业务键和数据库访问语句参数;所述返回参数包括:数据库访问语句执行结果和结果个数。
所述数据库访问语句为结构化查询语言SQL语句,所述数据库访问语句参数为包括SQL语句参数的SQL具体参数,所述数据库访问语句执行结果参数为SQL语句执行结果参数。
所述包括SQL语句参数的SQL具体参数进一步包括:表示SQL语句中的常量和结构化查询语言索引SQLIndex值的常量信息,表示SQL语句中呼叫实例数据CID变量索引值的CID参数,和/或用于表示所要访问的数据表的CID索引值的表名CID索引。
所述访问参数可以进一步包括:存储SQL语句中整型变量和字符串变量的可变参数,和/或SQL语句类型。
所述返回参数可以进一步包括:表示SQL语句执行结果中的参数的具体返回参数,和/或SQL语句类型。
所述步骤c可以进一步包括,服务器端判断收到的访问信息中包含的是SQL语句还是SQL注册索引、时间戳及可变参数,如果访问信息中包含的是SQL语句,则判断该SQL语句是否注册过,如果已注册,则直接进行后续处理,如果没有注册,则注册该SQL语句,并进行后续处理,如果访问信息中包含的是SQL注册索引、时间戳及可变参数,则根据该SQL注册索引、时间戳及可变参数确定本次访问信息携带的SQL语句,并进行后续处理。
所述步骤a中的参数针对API接口设置,用于访问数据库的参数包括:发起访问的客户端的标识,本次访问调用的API的名称,API的调用方法;所述返回参数包括:调用API的方法,标识数据库访问成功与否的错位号。
所述访问参数可以进一步包括:应用编程接口API的输入参数列表,所要调用的API接口的输入参数和期望返回的输出参数的个数。
所述返回参数可以进一步包括:服务器端调用API后输出的参数列表,调用API后输出参数的个数信息。
所述访问数据库和返回数据库访问结果通过No.7信令中的TCAP协议或TCP/IP协议实现。
所述步骤b中访问的数据库为远程数据库,所述步骤b之前进一步包括,
b 1.判断与远程数据库之间是否建立了TCP/IP协议方式的互联,如果建立了,则访问数据库和返回数据库访问结果通过TCP/IP协议,如果没有建立,则访问数据库和返回数据库访问结果通过No.7信令的TCAP协议实现。
所述步骤a中的访问参数和返回参数可以设置在一个功能块中。
该方法还可以进一步包括,为客户端访问数据库的操作设置定时器,如果在设定时间内收到返回信息,则处理该返回信息,如果在设定时间内未收到返回信息,则客户端重新执行该操作。
本发明通过设置No.7信令中的TCAP协议可识别的、且用于访问数据库的访问参数和返回参数,使客户端对访问参数赋值得到的访问消息可以通过TCAP协议来发送给服务器端,服务器端可以接收该访问消息,且根据访问消息对数据库进行操作得到的访问结果也可以通过TCAP协议来发送给客户端,同样,客户端也可识别该访问结果,从而使在数据网没有建立TCP/IP协议方式的互联时,可以通过TCAP协议进行远程数据库的访问,从而降低了对数据网的组网要求。且本发明提供的方案使客户端和服务器端只需要根据参数进行赋值即可通过No.7信令实现对远程数据库的访问,降低了原有通过No.7信令对远程数据库访问时的难度。
本发明提供的方法同样适用于对本地数据库的访问。
附图说明
图1为现有技术数据网之间完全实现TCP/IP协议层面的互联的组网示意图;
图2为现有技术数据网之间部分实现TCP/IP协议层面的互联的组网示意图;
图3为本发明以No.7信令承载方式,并通过执行ExecuteSQL操作实现对远程数据库访问的流程图;
图4为本发明以No.7信令承载方式,并通过RAPI操作实现对远程数据库访问的流程图;
图5为正常情况下通过TCAP协议访问数据库的信令流时序图;
图6为异常情况下通过TCAP协议访问数据库的信令流时序图;
图7为本发明方案根据数据网连接情况确定访问远程数据库的方法的流程图。
具体实施方式
本发明方案主要是设置No.7信令的TCAP协议可识别、且用于数据库访问的访问参数,在对数据库访问时,根据这些参数进行赋值,将赋值后的信息作为访问数据库的消息,并由TCAP协议发送该消息,对于返回数据库访问结果来说,处理过程类似。本发明方案可以应用在诸如INAP、CAP、WIN等协议所对应的各种协议领域,下面以在INAP协议对应的智能网为例作详细说明。
本发明方案提供了两种协议操作,根据这两种协议操作中的任意一种都可以实现以No.7信令承载方式访问数据库,一种是执行数据库操作,主要针对访问数据库的语句设置的,由于目前访问数据库的语句中以数据化查询语言(SQL)语句最为常见,因此以SQL语句为例,则本发明方案所提供的执行数据库操作为执行SQL(ExecuteSQL)操作;另一种是远程应用编程接口(API)(RAPI)操作,主要针对客户端和服务器端的API接口调用设置的。对于智能网来说,将SCF作为客户端,将SDF作为服务器端,下面以此为例,分别对这两种操作进行说明。
首先对ExecuteSQL操作进行说明。
在ExecuteSQL操作中,为实现以No.7信令承载方式对远程数据库的访问,首先设置一些No.7信令中的承载协议,即TCAP协议可识别、且用于数据库访问的参数,以在需要访问数据库时,由No.7信令根据这些参数设置访问数据库的信息,并由No.7信令中的TCAP协议根据这些参数返回访问数据库的结果。所设置的参数包括用于访问数据库的访问参数和用于返回数据库访问结果的返回参数。
其中,访问参数包括:发起访问的设备参数,在智能网中为SCP标识,用于标识SCF所在的SCP;业务键,即当前业务的业务键,可以为各种业务设置不同的业务键值;SQL具体参数,该参数至少包括用于表示SQL语句的SQL语句参数。该SQL具体参数还可以进一步包括常量信息,用于表示SQL语句中的常量信息和结构化查询语言索引(SQLIndex)值,其中的常量信息包括整型和字符串两种情况;呼叫实例数据(CID)参数,用于表示SQL语句中的CID变量索引值;表名CID索引,用于表示所要访问的数据表的CID索引值。
访问参数中还可以进一步包括:可变参数,用于存储SQL语句中的可变参数,该可变参数进一步包括整型变量和字符串变量两种,其中的整型变量用于保存SQL语句中的可变参数为整型时的参数值,字符串变量用于保存SQL语句中的可变参数为字符串时的参数值;SQL语句类型,用于设定SQL的语句,SQL语句类型可以根据需要设置,比如设置为未知类型(unknownType)、重取(Retrieve)、其他类型(otherType)、更新(Update)和删除(Delete),对这五种类型可以设置不同的参数,比如,设置-1=unknownType,0=Retrieve,1=otherType,2=Update,3=Delete。
返回参数包括:SQL语句执行结果,即SQL语句在SDF侧执行得到的结果;结果个数,即SQL执行成功后,返回的记录的条数。
返回参数还可以进一步包括:具体返回参数,即SQL语句执行结果中的相关参数,该具体返回参数包括整型变量和字符串变量,整型变量中存储SQL语句执行结果为整型时的参数值,字符串变量中存储SQL语句执行结果为字符串类型时的参数值;SQL语句类型,用于设定SQL的语句,与访问参数中的SQL语句类型相同,也可以设置为包括unknownType、Retrieve、otherType、Update和Delete,可以对这五种类型进行与访问参数中相同的设置。
在设置了上述访问参数和返回参数后,即可根据这些参数实现对数据库的访问,由于对本地数据库的访问及远程数据库的访问方法基本相同,因此以实现远程访问为例。SCF通过远程SDF访问远程数据库的过程参见图3,该访问过程通过以下步骤实现:
步骤301、某个SCF需要以No.7信令承载方式访问远程数据库时,由SCF根据本SCP的ID、发起访问的业务及访问所要使用的SQL语句,按照上述设置的访问参数进行赋值,再根据TCAP协议进行编码、生成访问数据库的访问消息,并发送给相应的SDF。
步骤302、SDF收到该访问消息后,根据TCAP协议对该访问消息进行解码,根据上述访问参数的设置情况获取访问消息中携带的访问信息,并组装成数据库可识别的SQL语句,之后通过该SQL语句操作数据库,对数据库的访问完成后,SDF再将数据库的执行结果按照上述设置的返回参数进行赋值,再由TCAP协议进行编码,生成返回数据库访问信息的返回消息,并返回给发起访问的SCF。
步骤303、SCF收到返回消息后,根据TCAP协议对该返回消息进行解码,并根据上述返回参数的设置情况获取返回消息中携带的访问结果。
SCF获取返回消息中的具体参数值的过程与SDF获取访问消息中的具体参数值的过程相同。
至此,通过No.7信令及SQL语句对远程数据库的访问完成。
由于某些固定的SQL语句可能会在访问数据库中经常用到,在每次操作的访问消息中都存有固定的SQL语句,必然会影响协议操作中携带的信息量,且SDF每次都需要从访问消息中获取该固定的SQL语句,肯定会影响SDF的响应速度,因此可以将SDF设置为能够注册SQL语句,即SDF注册收到的SQL语句,并将注册的结果信息和SQL的执行结果信息一起返回给SCF,SCF下次再执行SDF侧已注册过的SQL语句时,可以直接将SQL语句中的可变部分及该SQL语句在SDF中的注册信息发送给SDF即可,而不用再将整条SQL语句发送给SDF。
对于本发明的ExecuteSQL操作来说,实现对SQL语句的注册需要设置与注册相关的参数,比如,在访问参数中增加:SQL注册索引,用于分配已经注册的SQL语句的索引号码,该索引号码是区分SQL语句的唯一标识;时间戳,用于标识注册SQL语句的时间,该时间戳参数需要与SQL注册索引同时存在,或同时删除;可变参数,用于存储SQL语句中的可变参数,该可变参数进一步包括整型变量和字符串变量两种,其中的整型变量用于保存SQL语句中的可变参数为整型时的参数值,字符串变量用于保存SQL语句中的可变参数为字符串时的参数值。在返回参数中增加:注册索引,用于在注册SQL语句时保存对应的索引号码;时间戳,用于标识注册SQL语句的时间,同样该时间戳参数需要与SQL注册索引同时存在,或同时删除。返回参数中的这两个参数与访问参数中的注册索引和时间戳可以相同。
通过增加这些与注册相关的参数,SCF在访问数据库时,可以先根据自身保存的注册索引值与SQL语句的对应关系判断本次访问所要使用的SQL语句是否注册过,如果注册过,则SCF只设置与注册相关的参数的具体参数值,其可变部分通过对可变参数赋值确定,SDF获取访问消息中与注册相关的参数的具体参数值,并根据这些与注册相关的具体参数值及其他的信息进行后续的处理,如果没有,则SDF对该SQL语句进行注册处理,生成相应的注册索引和时间戳,并在返回操作结果时返回该注册索引和时间戳。
为便于调用这些参数,还可以将其保存在一个功能块中。对于智能网来说,可以将这些参数保存在一个SIB中,由于用于访问数据库的参数也属于业务数据,因此可以将这些参数保存在SDM SIB中。
以上所述为针对ExecuteSQL操作,下面对RAPI操作进行说明。对于智能网来说,将SCF作为客户端,将SDF作为服务器端,下面以此为例进行说明。
由于SDF可以通过其中的API对本地数据库进行访问,因此如果能够调用远程SDF中的API,则同样可以实现对远程数据库的访问。RAPI操作就是设置一些相关的参数,使No.7信令中的TCAP协议能够调用远程SDF中的API。该参数同样包括用于访问数据库的访问参数和用于返回数据库访问结果的返回参数。
其中,访问参数包括:SCP标识,用于标识SCF所在的SCP;API名称,本次访问所要调用的API的名称;调用API的方法,SDF调用API的方法,比如,直接调用API。该访问参数还可以进一步包括:输入参数列表,API的输入参数列表;API接口输入输出参数的个数信息,即所要调用的API接口的输入参数的个数和期望返回的输出参数的个数。
返回参数包括:调用API的方法,即SDF调用API的方法;输出参数的个数信息,表示SDF调用API后输出的参数个数;错位号,SDF返回的错位号,包括各种出错情况和调用成功。该返回参数还可以进一步包括:输出参数列表,表示SDF调用API后输出的参数列表;输出参数个数信息,用于表示SDF调用API后输出的参数个数。
在设置了上述访问参数和返回参数后,即可根据这些参数实现以No.7信令承载方式对数据库的访问,由于对本地数据库的访问及远程数据库的访问方法基本相同,因此以实现远程访问为例。实现SCF对远程SDF访问的过程参见图4,该访问过程通过以下步骤实现:
步骤401、某个SCF需要以No.7信令承载方式访问数据库时,由SCF根据本SCF所属SCP的ID、需要远程调用的API的名称及调用方法,按照上述设置的访问参数进行赋值,再由TCAP协议进行编码,生成访问数据库的访问消息,并发送给相应的SDF。
步骤402、SDF收到该访问消息后,由TCAP协议对该访问消息进行解码,SDF根据上述访问参数的设置情况获取访问消息中携带的具体参数值,并由指定的API对数据库进行访问,对数据库的访问完成后,SDF再将数据库的执行结果按照上述设置的返回参数进行赋值,再由TCAP协议进行编码,生成返回数据库访问信息的返回消息,并返回给发起访问的SCF。
步骤403、SCF收到返回消息后,由TCAP协议对该返回消息进行解码,SCF根据上述返回参数的设置情况获取返回消息中携带的具体参数值。
至此,通过No.7信令及远程SDF中的API对远程数据库的访问完成。
为便于调用这些参数,还可以将其保存在一个功能块中,对于智能网来说,可以将这些参数保存在一个SIB中。
在通过TCAP协议访问数据库时,可以通过图5和图6所示的信令流完成。具体来说,该实现过程包括正常流程和异常流程两种情况。下面以执行ExecuteSQL操作为例,对这两种情况分别作说明。
在正常流程中,SCF和SDF之间的信令流如图5所示,SCF发送给SDF的访问信息为事务处理能力开始(TCBegin)+TC调用(TCInvoke)+ExecuteSQL,表示该访问信息中的对话原语使用TCBegin,成份原语使用TCInvoke,并携带ExecuteSQL操作;SDF发送给SCF的返回信息为TC结束(TCEnd)+TC结果的最后一个(TCResultL)+ExecuteSQL结果(ExecuteSQLResult),表示该返回信息中的对话原语使用TCEnd,成份原语使用TCResultL,其表示最后一个Result,该信令中并携带ExecuteSQL结果。如果SDF处理ExecuteSQL操作出现异常,但是从TCAP层面并看不出这个异常,因此也使用图5所示的信令流对远程数据库进行访问。
在出现参数编码错误,或出现TCAP层面的异常情况时,SCF和SDF之间的信令流参见图6,SDF返回的不是图5中的TCEnd+TCResultL+ExecuteSQLResult信息,而是TC用户错误(TC-U-ABORT),以通知SCF数据库访问操作有误。
以上所述的两种方案均实现了通过No.7信令对本地数据库和远程数据库的访问。在访问远程数据库时,由于数据网可能建立了TCP/IP协议方式的互联,也可能没有建立,因此可以对所有的数据网都采用No.7信令进行远程访问,也可以首先判断数据网的连接情况,则该过程参见图7,通过以下步骤实现:
步骤701、SCF在访问远程SDF中的数据库时,首先在本SCF系统中获取当前整个网络组网的配置信息,通过该配置信息判断本数据网与需要访问的数据网之间是否已经建立了TCP/IP协议方式的互联,如果已经建立了,则进入步骤702,如果只建立了No.7信令层面的互联,则进入步骤703。
步骤702、通过TCP/IP协议访问远程数据网中的SDF,远程数据网中的SDF并通过TCP/IP协议返回访问结果。
通过TCP/IP协议对远程数据网的访问可以采用现有技术实现,由于TCP/IP协议支持所有用于访问数据库的参数,所以TCP/IP协议也可以采用本发明提供的参数实现对远程数据库的访问。
步骤703、通过No.7信令访问远程数据网中的SDF,远程数据网中的SDF并通过No.7信令返回访问结果。
在上述确定访问数据库的承载方式的过程中,如果已经建立了TCP/IP协议方式的互联,也可以采用步骤703提供的方法实现对远程数据库的访问。
在本发明提供的两种操作方案中,都可以设置操作定时器,如果SCF在定时器超时还没有收到返回信息,则认为本次访问失败,之后可以重发访问信息,也可以作其他的处理。
虽然本发明的主要目的是设置No.7信令可识别的数据库访问参数,以实现通过No.7信令对数据库进行访问,但是由于TCP/IP协议支持所有的数据库访问参数,因此本发明可以毫无障碍地应用于TCP/IP协议,也就是说,TCP/IP协议同样可以通过本发明提供的数据库访问参数对数据库进行访问。
以上所述仅为本发明的较佳实施例,并不用以限定本发明的保护范围。

Claims (14)

1、一种实现数据库访问的方法,其特征在于该方法包括以下步骤:
a.预先设置可由No.7信令的事务处理能力应用部分TCAP协议识别、且用于访问数据库的访问参数及用于返回数据库访问结果的返回参数;
所述访问参数包括:用于分配已注册的SQL语句的SQL注册索引,用于标识注册SQL语句时间的时间戳,和存储SQL语句中整型变量和字符串变量的可变参数;所述返回参数包括:用于将注册完成的SQL语句设置索引值的SQL注册索引,用于标识注册SQL语句时间的时间戳;
b.客户端在需要访问数据库时,根据访问信息对步骤a中设置的访问参数赋值,并将对访问参数的赋值结果发送给服务器端;且客户端先判断本次访问的SQL语句是否已注册,如果已注册,则对包括SQL注册索引、时间戳及可变参数的访问参数赋值,如果未注册,则对未包括SQL注册索引、时间戳及可变参数的访问参数赋值;
c.服务器端收到访问数据库的赋值结果后,获取该访问赋值结果中的访问信息,根据该访问信息进行数据库访问操作,然后根据访问结果对步骤a中设置的返回参数赋值,并向客户端返回该赋值结果;
d.客户端收到返回的赋值结果后,获取返回赋值结果中的数据库访问结果信息。
2、根据权利要求1所述的方法,其特征在于,所述步骤a中的参数针对数据库访问语句设置,所述访问参数包括:发起访问的设备标识、业务键和数据库访问语句参数;所述返回参数包括:数据库访问语句执行结果和结果个数。
3、根据权利要求2所述的方法,其特征在于,所述数据库访问语句为结构化查询语言SQL语句,所述数据库访问语句参数为包括SQL语句参数的SQL具体参数,所述数据库访问语句执行结果参数为SQL语句执行结果参数。
4、根据权利要求3所述的方法,其特征在于,所述包括SQL语句参数的SQL具体参数进一步包括:表示SQL语句中的常量和结构化查询语言索引SQLIndex值的常量信息,表示SQL语句中呼叫实例数据CID变量索引值的CID参数,和/或用于表示所要访问的数据表的CID索引值的表名CID索引。
5、根据权利要求3所述的方法,其特征在于,所述访问参数进一步包括:存储SQL语句中整型变量和字符串变量的可变参数,和/或SQL语句类型。
6、根据权利要求3所述的方法,其特征在于,所述返回参数进一步包括:表示SQL语句执行结果中的参数的具体返回参数,和/或SQL语句类型。
7、根据权利要求1所述的方法,其特征在于所述步骤c进一步包括,服务器端判断收到的访问信息中包含的是SQL语句还是SQL注册索引、时间戳及可变参数,如果访问信息中包含的是SQL语句,则判断该SQL语句是否注册过,如果已注册,则直接进行后续处理,如果没有注册,则注册该SQL语句,并进行后续处理,如果访问信息中包含的是SQL注册索引、时间戳及可变参数,则根据该SQL注册索引、时间戳及可变参数确定本次访问信息携带的SQL语句,并进行后续处理。
8、根据权利要求1所述的方法,其特征在于,所述步骤a中的参数针对API接口设置,用于访问数据库的参数包括:发起访问的客户端的标识,本次访问调用的API的名称,API的调用方法;所述返回参数包括:调用API的方法,标识数据库访问成功与否的错位号。
9、根据权利要求8所述的方法,其特征在于,所述访问参数进一步包括:应用编程接口API的输入参数列表,所要调用的API接口的输入参数和期望返回的输出参数的个数。
10、根据权利要求8所述的方法,其特征在于,所述返回参数进一步包括:服务器端调用API后输出的参数列表,调用API后输出参数的个数信息。
11、根据权利要求1所述的方法,其特征在于,所述访问数据库和返回数据库访问结果通过No.7信令中的TCAP协议或TCP/IP协议实现。
12、根据权利要求1所述的方法,其特征在于所述步骤b中访问的数据库为远程数据库,所述步骤b之前进一步包括,
b1.判断与远程数据库之间是否建立了TCP/IP协议方式的互联,如果建立了,则访问数据库和返回数据库访问结果通过TCP/IP协议,如果没有建立,则访问数据库和返回数据库访问结果通过No.7信令的TCAP协议实现。
13、根据权利要求1所述的方法,其特征在于,所述步骤a中的访问参数和返回参数设置在一个功能块中。
14、根据权利要求1所述的方法,其特征在于该方法进一步包括,为客户端访问数据库的操作设置定时器,如果在设定时间内收到返回信息,则处理该返回信息,如果在设定时间内未收到返回信息,则客户端重新执行该操作。
CNB031565883A 2003-09-09 2003-09-09 一种实现数据库访问的方法 Expired - Fee Related CN1329852C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031565883A CN1329852C (zh) 2003-09-09 2003-09-09 一种实现数据库访问的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031565883A CN1329852C (zh) 2003-09-09 2003-09-09 一种实现数据库访问的方法

Publications (2)

Publication Number Publication Date
CN1595386A CN1595386A (zh) 2005-03-16
CN1329852C true CN1329852C (zh) 2007-08-01

Family

ID=34660034

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031565883A Expired - Fee Related CN1329852C (zh) 2003-09-09 2003-09-09 一种实现数据库访问的方法

Country Status (1)

Country Link
CN (1) CN1329852C (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036041B (zh) * 2014-06-30 2018-09-04 小米科技有限责任公司 搜索方法及装置
CN104516964B (zh) * 2014-12-24 2018-06-08 北京奇虎科技有限公司 数据库功能接口的生成方法、内置数据的处理方法及装置
CN107491700B (zh) * 2017-07-06 2020-07-14 联动优势科技有限公司 一种数据访问方法及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000060812A1 (en) * 1999-04-05 2000-10-12 Tekelec Methods and systems for providing database node access control functionality in a communications network routing node
US6212513B1 (en) * 1997-06-27 2001-04-03 International Business Machines Corporation Database access system
CN1352428A (zh) * 2001-11-29 2002-06-05 上海复旦光华信息科技股份有限公司 基于sql语句的旁路式访问控制系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6212513B1 (en) * 1997-06-27 2001-04-03 International Business Machines Corporation Database access system
WO2000060812A1 (en) * 1999-04-05 2000-10-12 Tekelec Methods and systems for providing database node access control functionality in a communications network routing node
CN1352428A (zh) * 2001-11-29 2002-06-05 上海复旦光华信息科技股份有限公司 基于sql语句的旁路式访问控制系统

Also Published As

Publication number Publication date
CN1595386A (zh) 2005-03-16

Similar Documents

Publication Publication Date Title
CN100426242C (zh) 供应数据处理系统中识别、保留和逻辑供应资源的方法和系统
CN1973526B (zh) 在事件处理系统中处理业务初始请求消息的事件处理方法
CN100566328C (zh) 网络解析域内的方法和用户分布服务器、及有关电信系统
KR100989479B1 (ko) 다수의 서비스 제공자 및 서비스 인에이블러가 존재하는 통신망에서 상이한 서비스에 관계하는 상이한 데이터를 통합하는 장치 및 방법
US6289095B1 (en) NPA split management in intelligent network environment
JPH10512721A (ja) 移動通信システムにおけるインテリジェントネットワークサービスを作動させる方法および移動通信システム
WO2011098168A1 (en) Data management at a directory database
CN112579319B (zh) 一种基于LRU Cache优化的服务调用方法及装置
JP2001211258A (ja) No.7関門局信号網の翻訳類型マッピング方法
CN1543748B (zh) 开放式服务访问的扩展电信系统结构
CN1329852C (zh) 一种实现数据库访问的方法
US20030172356A1 (en) Centralized management of a distributed database system
CA2251491C (en) Intelligent network capable of executing a plurality of service control request messages in a single service control point
CN113067844A (zh) 服务发现方法、装置及hnrf
CN100493080C (zh) 信令应用服务器服务体系结构
US5966713A (en) Method for determining the contents of a restoration log
KR100678310B1 (ko) 이동단말의 실시간 위치 정보 관리 시스템 및 그 방법
CN101056314B (zh) 智能网络系统、业务开发方法、实现业务与协议分离的方法
US5893103A (en) Method of reconstructing a managed information tree
CN1322418C (zh) 实现对象持续化服务的系统及其方法
WO1999055067A1 (en) Method for submitting user profiles to a telecommunications network
CN106685965B (zh) 一种灵活的centrex业务实现系统
EP1460862A1 (en) Number portability database
KR100615852B1 (ko) 유피티 서비스 제공을 위한 에이치엘알과 에스씨에프의 상호동작 방법
CN115696557A (zh) 一种用户信息的注册方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070801

Termination date: 20130909