CN1295607C - 调用存储过程和访问存储的过程数据的方法和系统 - Google Patents

调用存储过程和访问存储的过程数据的方法和系统 Download PDF

Info

Publication number
CN1295607C
CN1295607C CNB018132995A CN01813299A CN1295607C CN 1295607 C CN1295607 C CN 1295607C CN B018132995 A CNB018132995 A CN B018132995A CN 01813299 A CN01813299 A CN 01813299A CN 1295607 C CN1295607 C CN 1295607C
Authority
CN
China
Prior art keywords
output
storing process
data
data object
remote interface
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
CNB018132995A
Other languages
English (en)
Other versions
CN1509434A (zh
Inventor
波恩哈德·康文特
斯特番·德斯罗奇
辛西娅·M·撒拉克
查尔斯·D·沃尔夫森
德克·沃尔施德
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1509434A publication Critical patent/CN1509434A/zh
Application granted granted Critical
Publication of CN1295607C publication Critical patent/CN1295607C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种使数据能够被存取的方法、系统和程序。从客户机接收调用以调用远程接口方法。响应调用的远程接口方法,利用远程接口实现存取所接收的调用的参数。利用存取的参数作为存储过程的输入参数,产生存储过程调用。将存储过程调用传送到由要执行的调用命名的存储过程。接收存储过程的输出,并将该输出插入返回客户机的数据对象。

Description

调用存储过程和访问存储的 过程数据的方法和系统
技术领域
本发明涉及用于调用存储过程和访问存储的过程数据的方法、系统以及程序。
背景技术
许多分布式应用程序是利用Java程序结构(Java是SunMiscrosystem,Inc的商标)编写的,其中一个系统上的客户机根据服务器应用程序通过诸如因特网的网络、局域网(LAN)等请求数据或操作。例如,国际商用机器公司(IBM)的WebSphere应用服务器(IBM和WebSphere是国际商用机器公司的商标)实现开放型分布式环境,其中诸如不同操作系统或不同程序语言等的不同平台上的各客户机应用程序可以与该服务器交互,或者互相交互(例如:诸如企业JavaBeans的部件可以通过同一个服务器互相对话,或者在各服务器之间互相对话)。
分布式应用程序的通用设计采用3个计算等级:客户机,与用户交互;应用服务器,例如WebSphere应用服务器,含有应用的商用逻辑;以及资源管理器,用于存储数据。在此模型中,客户机不必知道关于实际资源管理器的任何信息,例如正被访问的或对其进行修改的基础数据库。此外,该方法提高了安全性。只有服务器需要直接存取资源管理器控制的数据,而客户机不需要。客户机可以包括Java小应用程序、Visual Basic、C++以及在现有技术分布式应用程序结构中通常采用的其它客户机程序实现技术。
例如,客户机可以提供用户通过其可以输入产品的订单的表格。客户机将此订单信息发送到服务器,服务器检验产品数据库并执行进行记帐和发运需要完成的任务。一个服务器通常被多个客户机使用。例如,几十个或几百个客户机可以与控制数据库访问的少量服务器交互。服务器管理对数据库资源的访问,并同步对数据库资源的访问,而且利用数据或者利用状态信息响应客户机的请求。
电子商务应用程序开发者遇到的一个问题是,诸如遗留数据库存储过程的许多健壮数据库应用程序是利用编程语言编写的,并采用与通常使用的客户机结构,例如Java客户机、小应用程序等不兼容的数据输入和输出参数格式。
因为此原因,所以在本技术领域内需要提供一种使利用通用编程语言,例如Java、C++、Visual Basic等编写的客户机应用程序能够存取数据库存储过程所采集的数据的接口。
发明内容
因此,提供了一种使数据能够被存取的方法、系统和程序。从客户机接收调用以调用远程接口方法。响应调用的远程接口方法,利用远程接口实现存取所接收的调用的参数。利用存取的参数作为存储过程的输入参数,产生存储过程调用。将存储过程调用传送到由要执行的调用命名的存储过程。接收存储过程的输出,并将该输出插入返回客户机的数据对象。
通过对数据库内的数据进行操作,存储过程最好对数据库进行处理并产生输出。该输出可以包括为一组输出中的一个成员的输出,该组输出包括数据库表内的一个或多个结果数据集和通过对数据库表内的数据进行存储过程操作获得的一个或多个输出参数。
更进一步产生用于描述包括在数据对象内的存储过程输出的元数据。将该元数据附加到数据对象。客户机可以对接收的数据对象内的元数据进行处理以确定如何存取数据对象的存储过程输出。
本发明还提供了一种使应用程序可以利用存储过程程序的方法。确定一个存储过程程序,所述存储过程程序产生一个应用程序所需的输出。产生远程接口实现以响应远程接口方法,所述远程接口实现可以从包括数据的应用程序接收调用,并利用应用程序内的数据用作输入、调用数据库服务器内的存储过程。以及对远程接口实现产生输出映射,用以确定如何将存储过程输出插入可以被应用程序使用的数据对象内。
本发明提供一种使数据能够被存取的系统,该系统包括:用于从客户机接收调用以调用远程接口方法的装置;响应调用的远程接口方法,利用远程接口实现存取所接收的调用的参数的装置;利用存取的参数作为存储过程输入参数,产生存储过程调用的装置;用于将存储过程调用传送到由要执行的调用命名的存储过程的装置;用于接收存储过程的输出的装置;用于将接收的存储过程的输出插入数据对象的装置;以及用于将数据对象返回客户机的装置。
根据上述的系统,其中存储过程在数据库服务器内执行并产生输出,其中该输出可以包括为一组输出中的一个成员的输出,该组输出包括数据库表内的一个或多个结果数据集和通过对数据库表内的数据进行存储过程操作获得的一个或多个输出参数。
上述的系统进一步包括利用远程接口实现对输入映像进行处理,确定客户机调用内的参数以用作存储过程调用的输入参数的装置。
上述的系统进一步包括:在存储过程程序完成执行后,用于接收存储过程输出的装置。
上述的系统进一步包括用于对指出存储过程输出如何映射到数据对象的输出映射进行处理的装置。
根据上述的系统,其中该输出可以包括结果数据集和参数,其中该输出映射指出将接收的结果数据集和参数附加到数据对象的顺序。
上述的系统进一步包括:用于产生用于描述包括在数据对象内的存储过程输出的元数据的装置;以及用于将该元数据附加到数据对象的装置。
上述的系统进一步包括:用于利用客户机对接收数据对象内的元数据进行处理以确定如何存取该数据对象的存储过程输出的装置。
根据上述的系统,其中数据对象包括多个元素,其中存储过程输出包括至少一个结果数据集内的行数据,其中将存储过程输出插入数据对象的装置进一步将每个结果数据集的每行中的每个列的数据插入数据对象中的一个元素,并且其中元数据定义每个元素中的数据的结构和数据的类型。
根据上述的系统,其中数据对象包括多个元素,并且其中存储过程输出可以包括多个输出参数,其中将存储过程输出插入数据对象的装置进一步将每个输出参数插入数据对象内的一个元素,并且其中元数据提供关于每个元素中的数据的结构和数据的类型的信息。
根据上述的系统,其中客户机仅响应调用接收一个具有存储过程输出的数据对象。
根据上述的系统,其中远程接口实现是以企业JavaBean的方式实现的,并且其中数据对象包括Java可串行化对象。
本发明提供一种使应用程序可以利用存储过程程序的系统,该系统包括:用于确定一个存储过程程序的装置,所述存储过程产生一个应用程序所需输出;用于产生远程接口实现以响应远程接口方法的装置,所述远程接口实现可以从包括数据的应用程序接收调用,并利用应用程序内的数据用作输入、调用数据库服务器内的存储过程;以及用于对远程接口实现产生输出映射、用以确定如何将存储过程输出插入可以被应用程序使用的数据对象内的装置。
根据上述的系统,其中产生的远程接口实现将元数据插入数据对象内,用于提供关于插入该数据对象的存储过程输出的信息。
所说明的实现提供了一种使客户机应用程序能够存取和调用存储过程程序并以与客户机应用程序兼容的格式使数据返回客户机应用程序。
附图说明
现在,将参考附图所示、仅作为例子的本发明的优选实施例说明本发明,附图包括:
图1示出实现本发明各方面的计算环境;
图2示出根据本发明描述的实现远程接口实现、为了对访问存储过程进行管理所采用的数据结构;
图3示出远程接口实现为了调用存储过程所执行的逻辑;以及
图4示出根据本发明描述的实现远程接口实现、对存储过程输出进行处理所执行的逻辑。
具体实施方式
在以下的说明中,将参考作为本发明一部分、示出本发明的几个实施例的附图。应当理解还可以采用其它实施例,而且在本发明范围内,可以进行其结构和运行的变化。
图1示出实现本发明各方面的网络计算环境2。网络环境2包括:客户机系统4,包括客户机应用程序6和远程接口8;应用服务器10,包括远程接口实现(implementation)12和数据库客户机程序14;以及数据库服务器16,包括诸如数据库管理系统(DBMS)程序的数据库程序18和数据库22。客户机系统4、应用服务器10以及数据库服务器16可以包括一个或多个服务器或本技术领域内众所周知的任何其它计算机设备。作为一种选择,应用服务器10可以包括在客户机系统4或不同系统上执行的中间件。
客户机系统4、应用服务器10以及数据库服务器16通过网络20进行通信,网络20可以包括本技术领域内内众所周知的任何网络,包括:传输控制协议/网际协议(TCP/IP)网络(例如:内部网络、因特网)、局域网、广域网、光纤信道、令牌环等。作为一种选择,网络20可以包括多个网络。作为一种选择,可以在同一个机器上或单独机器的任何组合上实现数据库程序18、数据库22、远程接口实现12以及客户机应用程序6,从而避免了在程序6、10以及16的某两个之间需要网络通信协议。
数据库客户机/服务器程序14、18可以包括本技术领域内众所周知的数据库客户机/服务器程序,例如IBM公司的DB2、OracleCorporation的ORACLE、微软公司的SQL服务器等。(DB2是国际商用机器公司的商标。)数据库程序14和18用于根据保持在一个或多个数据库22内的信息存取和执行操作。数据库22可以包括一个或多个具有数据行和数据列的表24。IBM公司的出版物“A dministrationGuide,Version 7(Volumes 1,2,and 3)”、第SC09-2946-00号、第SC09-2944-00号第SC09-2945-00号IBM文件(IBM公司2000年版权)以及Don Chamberlin编写的“A Complete Guide to DB2Universal Database”(Morgan/kaufman,1998)对数据库程序的结构和运行进行了详细说明,在此引用这些出版物的全部内容供参考。
在图1所示的上述实现中,数据库程序18包括存储过程28,存储过程28是数据库客户机14内的调用或调用机(mechanism)30调用的程序。存储过程调用30将输入参数送到存储过程28。响应调用30,在数据库服务器16内执行存储过程28,而且可以执行结构查询语言(SQL)语句以根据输入参数处理数据库22的记录或者执行与SQL不相关的操作。存储过程28可以包括过程构造模块,而且还可以包括SQL语句,即应用程序。此外,存储过程28可以执行程序语句,而无需查询数据库表22。在这种情况下,存储过程28可以包括独立于数据库22执行并产生输出的程序。可以利用存储数据库调用30内的名称调用存储过程28。存储过程特别用于处理大量数据库记录,例如几百万至几十亿个记录,而无需在数据库服务器16与数据库客户机14之间传送数据和提供必要输入参数。存储过程被保持在数据库服务器16内供多个数据库客户机14访问和重新使用。关于存储过程的进一步详细说明请参考出版物“A Complete Guide to DB2Universal Database”,在此引用此出版物供参考。
在某些实现中,可以利用本技术领域内众所周知的诸如Java远程方法调用(RMI)、公共对象请求代理体系结构(CORBA)、远程过程调用(RPC)、简单对象访问协议(SOAP)等的分布式计算协议实现远程接口8和远程接口实现12,从而允许远程接口实现12与远程接口8进行通信。应用服务器10还运行对客户机发出的请求进行处理的程序,例如IBM WebSphere应用服务器或超文本传输协议(HTTP)服务器。可以作为企业JavaBean实现远程接口实现12,企业JavaBean能够处理各种客户机,例如万维网浏览器、Java小应用程序等发出的请求,并且能够调用存储过程28以采集客户机应用程序6请求的数据。因此,远程接口8和远程接口实现12包括通过网络20进行通信的分布式对象。
在利用企业JavaBean实现远程接口8和远程接口实现12的实现中,应用服务器10提供安全性、并发控制、交易支持以及其它通用商务要求。利用RMI/IIOP协议,客户机端Java应用程序可以直接访问企业JavaBean远程接口实现12,或者与在应用服务器10上实现的HTTP服务器通信的万维网客户机可以间接访问企业JavaBean远程接口实现12。此外,客户机调用32可以进一步调用Java小服务程序或Java服务器页面(JSP),Java小服务程序或Java服务器页面(JSP)反过来调用远程接口实现12。
远程接口实现12可以从客户机应用程序6接收请求或调用32,客户机应用程序6可以提供与请求有关的数据。然后,远程接口实现12将客户机调用32内的数据映射到存储过程调用30的任意输入参数。然后,远程接口实现12调用用于指定服务器存储过程28的名称的存储过程调用30和包括在客户机应用程序6内的任意输入参数。为了产生存储过程调用30,远程接口实现12必须包括任何要求的输入,从而将客户机调用32的任意内容映射到存储过程调用30的输入参数。存储过程28可以返回表24内、满足查询的0个或多个结果数据集。查询项目可以基于从客户机调用32映射的输入参数。此外,存储过程28可以对数据库表24内的数据进行计算和操作,或者执行不访问数据库表24的其它操作,以产生一个或多个输出参数,例如满足查询条件的所有行的各数值的平均值。存储过程28可以更进一步对数据库服务器14执行各种操作,而无需将任何数据返回节点,例如发送消息。远程接口实现12必须输入代码以将从存储过程28返回的一个或多个结果数据集和/或输出参数映射到通过远程接口8可以返回客户机应用程序6的数据结构。
当前软件体系结构面对的一个挑战是,客户机应用程序6希望一个数据对象根据调用32返回。然而,存储过程输出可能包括一个或多个具有不同列格式的多行数据的结果数据集以及一个或多个输出参数。为了适应客户机仅响应调用32接收一个数据对象的限制,上述实现提供了一种将存储过程输出映射到与客户机应用程序兼容的格式的技术。
图2示出保持在远程接口实现12内的数据结构,在将调用30调用到存储过程28时,并且在将任何返回结果数据集和/或参数插入Java串行化对象34以返回客户机远程接口8时,使用该远程接口实现12。Java串行化过程是标准Java机制,为了使该对象写入文件或通过网络发送该对象,该Java机制创建独立于Java对象状态字节流的平台。对于可串行化的分类,用户必须实现java.io.Serializable接口,而且分类字段必须或者是基元型(primitive type)的或者是可串行化的。作为一种选择,如果该分类实现将非基元或非可串行化字段写入字节流的方法,则对象是可串行化的。图2进一步示出从远程接口实现12接收的、包括参数以及对数据或其它信息的请求的客户机远程接口调用32。远程接口实现12包括一个或多个输入映射52,输入映射52确定调用32的一个或多个数据参数54a、b...、n如何映射到被提供给存储过程28的存储过程调用32的输入参数56a、b...、m。
远程接口实现12进一步包括一个或多个输出映射60,输出映射60确定从存储过程28返回的结果数据集62a...k和输出参数64如何映射到Java可串行化对象34内的元素66a...k和68。Java可串行化对象34包括元数据72,它提供关于附加在对象34内的每个元素的信息。例如,元数据72可以指出哪个元素包括输出参数以及对可串行化对象34内的元素附加的每个输出参数的数据类型和数据长度。元数据72可以进一步提供关于返回结果数据集的信息,包括不同返回结果数据集的数量、各列的结构和每个结果数据集内的数据类型,以及行数量和这种结果数据集数据如何映射到Java可串行化对象34内的元素66a...k。这样,从存储过程28返回的结果数据集和/或输出参数可以映射到可以响应调用32作为一个数据对象返回客户机应用程序6的Java可串行化对象34内的各元素。本技术领域内的技术人员明白可以利用各种类型的可串行化数据对象存储存储过程输出,例如IBMData Access Beans(IBM Data Access Beans)可调用语句对象(com.ibm.db.CallableStatement)。
输入映射52和输出映射60可以包括确定客户机调用32的内容如何映射到存储过程调用的输入参数56a、b...、m以及从存储过程28返回的返回结果数据集62a...k和输出参数64如何映射到Java可串行化对象34内的各元素的索引。
在某个实现中,存储过程28不能将输出返回远程接口实现12,但是可以执行其它动作,例如更新数据库22、发送消息、调用其它应用程序等。在这种情况下,调用存储过程28的远程接口实现12将不包括输出映射60。
应用服务器10可以保持多个根据各不同客户机调用调用的、包括不同输入映射52和输出映射60的远程接口实现12。
此外,远程接口实现12还可以保持如图2所示的错误映射80,用于将从存储过程28返回的、通常属于SQL错误的存储过程错误82a...n映射到Java远程异常(exception)84a...n,例如利用Java.rmi.RemoteExceptions分类定义的异常。与存储过程产生的SQL错误码相比,客户机应用程序6更可能理解和采用Java异常。此外,还要求此错误映射支持行业标准,例如企业JavaBean规范。
图3示出为了根据客户机调用32内的参数产生存储过程调用30,在远程接口实现12内所执行的逻辑。在方框100,控制过程以远程接口实现12从远程接口8接收调用32以调用远程接口实现12来存取存储过程28开始。在方框102,调用远程接口实现12,并确定(在方框104)远程接口实现12的输入映射52。根据输入映射52,远程接口实现12存取(在方框106)客户机调用32的参数或数据54a、b...n,这些参数或数据将映射到存储过程调用30的一个或多个输入参数56a、b...m。然后,根据存取的输入映射52,将存取参数54a、b...n插入(在方框108)每个输入参数56a、b...m内。之后,远程接口实现12调用(在方框110)具有客户机调用32的输入参数的存储过程调用30。
图4示出为了根据调用30对存储过程28产生的输出进行处理,在远程接口实现12内所执行的逻辑。收到(在方框200)存储过程28产生的0个或多个行结果数据集和/或输出参数后,远程接口实现12访问(在方框202)远程接口实现12的输出映射60,输出映射60确定将结果数据集数据和/输出参数映射到Java可串行化对象34以返回客户机远程接口8,客户机远程接口8反过来将该对象返回客户机应用程序6。可以固定预定输出参数的数量和字段,例如计算值,因此可以改变返回的结果数据集的数量。在方框204至218,远程接口实现12对每个接收结果数据集i执行步骤206至218。对于每个接收结果数据集i,远程接口实现12产生(在方框206)元数据72,元数据72定义结果数据集i的每个列(包括每列的数据类型和长度)以及结果数据集i内的行数。对于结果数据集i内的每行i(在方框208至216)以及对于行j上的每列k(在方框210至214),远程接口实现12将数据元素66a...k附加到Java可串行化对象34,并将结果数据集i内k列、j行上的数据插入此附加元素内。对结果数据集i内的所有行上的所有列执行此过程,直到将整个结果数据集i的数据总装到Java可串行化对象34。然后,对从存储过程28接收的输出中的任何其它结果数据集i执行(在方框218)此过程。
在方框220至226,对于每个返回输出参数m,产生元数据并将该元数据附加到定义输出参数m的类型和长度的元数据72(在方框222)。然后,将数据元素68附加到将输出参数m的数据插入其内的Java可串行化对象34。在产生Java可串行化对象34以包括描述存储过程28输出的结果数据集和/或输出参数数据后,Java可串行化对象34作为单个数据对象通过远程接口8返回(在方框228)客户机应用程序6。
可以将客户机应用程序6编码为通用客户机用于处理Java可串行化对象,CallableStatement等,而无需假定知道关于CallableStatement的内部结构的任何先前知识。相反,客户机应用程序6可以根据包含在返回对象34内的元数据72剖析该对象并利用诸如由过程返回的输出参数和结果数据集的相关分量工作。
根据图3和图4所示的逻辑,远程接口实现12可以代表客户机应用程序6使用存储过程28程序并将可以包括存储过程28的所有输出以及自描述元数据72的单个数据对象返回客户机应用程序6,存储过程28的所有输出可以包括多个数据点。可以对客户机应用程序4进行编码以处理元数据72,从而确定Java可串行化对象34内的输出结果的结构和格式进而存取、使用其内的数据。根据上述描述的实现,即使存储过程程序28产生其格式对于该应用程序不可存取的输出,远程接口实现12仍可以使客户机应用程序存取存储过程程序28采集的数据,该存储过程程序28可以是遗留程序。例如,利用诸如企业JavaBean体系结构的标准分布式计算体系结构,可以使企业JavaBean客户机部件使用存储过程的功能和输出,而无需重写存储过程代码。
以下是上述实现的一个应用实例。在此例中,客户机应用程序6与面向金融的万维网网站相连,这样可以使用户通过该网站进行注册、跟踪其投资组合以及将评论登记到电子公告牌上。支持此万维网网站的数据库包括具有每个客户机的客户机信息、投资组合信息以及对公告牌登记的登记索引的表。数据库22还含有用于提供注册网站用户的综合概况的存储过程28客户机报告(CLIENTREPORT),包括其投资和它们在电子公告牌上所做的登记。客户机报告包括客户机名称和电子邮件地址从而使销售人员向用户提供关于所提供的其它产品或服务的建议。
在此示例中相关的存储过程28可以分别对3个单独SQL语句进行处理,从将返回客户机应用程序的输出参数和结果数据集内采集正确数据。在这种情况下,输出参数包括万维网网站客户机的名称和电子邮件地址,而且该结果数据集包括关于特定用户的投资资产和公告牌登记内容的信息。例如,使用万维网浏览器(未示出)的用户可以提交HTTP请求,该HTTP请求包括用户ID和关于用户投资组合信息的请求。可以将HTTP请求送到客户机应用程序6,客户机应用程序6可以反过来调用远程接口。然后,远程接口可以将用户ID和关于投资组合信息的请求送到远程接口实现12,远程接口实现12可以产生存储过程调用30,输入存储过程调用30以使存储过程28获得利用所提供用户ID识别的用户的投资组合信息。然后,将所有这3个表中的存储过程28输出封装到诸如“com.ibm.db.CallableStatement”的Java可串行化对象34内或其它数据对象内以返回到客户机应用程序6。此后,客户机应用程序6对该信息进行去封装和分析,然后,将它插入可以在发出关于投资组合信息的HTTP请求的用户的万维网浏览器中呈现的页面内。
存储过程可以用于大量其它电子商务应用中,例如查询数据库并采集根据其计算运费、复查货物清单、处理装载的货物、返回趋势分析等的记录。这样,将处理负担从客户机或应用服务器转移到了数据库服务器。
利用上述实现,可以降低电子商务以及其它应用程序的开发成本和维护成本,因为这些应用程序采用先前存在的遗留存储过程,而无需重写存储过程代码。在开发利用其实现遗留存储过程执行的操作的应用程序时,不习惯SQL和数据库环境的应用程序开发者可能存在困难。利用上述实现,应用程序开发者不需要知道关于SQL的广博的知识以及数据库的结构和排列。相反,应用程序开发者仅需要创建使客户机程序可以使用存储过程输出的远程接口。
所实现的优选实施例可以是利用标准编程技术和/或工程技术产生软件或代码的一种方法、设备或产品。在此,术语“产品”指在计算机可读介质(例如:磁性存储介质(例如:硬盘驱动器、软盘、磁带等)、光存储器(CD-ROM、光盘等)、易失性存储装置和非易失性存储装置(例如:EEPROM、ROM、PROM、RAM、DRAM、SRAM、固件、可编程逻辑电路等))内实现的代码或逻辑。处理器可以存取和执行计算机可读介质内的代码。还可以通过传输媒体,或者通过网络由文件服务器存取该优选实施例中实现的代码。在这种情况下,实现该代码的产品可以包括传输媒体,例如网络传输导线、无线传输媒体、在空间传播的信号、无线电波、红外信号等。当然,本技术领域内的技术人员明白可以对此配置做许多修改,并且产品可以包括本技术领域内众所周知的任何信息载体。
在某些实现中,将存储过程28输出置放在Java可串行化对象内。然而,也可以利用另一种数据对象存储聚合的输出数据。
在上述实现中,所实现的远程接口是企业JavaBean。然而本技术领域内的技术人员应当明白,可以采用任何部件体系结构实现远程接口8、远程接口实现12、客户机应用程序6以及远程接口调用32,而且还应当明白本发明并不局限于Java实现。
在一种Java实现中,可以将远程接口编写为无状态对话(statelesssession)企业JavaBean,以将必须编码的强制方法的数量降低到最小、将资源消耗降低到最少并允许利用多个客户机使用它。
在上述实现中,客户机远程接口调用32调用的远程接口实现12从客户机调用存取参数并调用存储过程调用。作为一种选择,远程接口实现12还可以调用另一个程序部件以调用存储过程调用。
在又一种实现中,应用服务器10可以保持多个作为多个企业JavaBean实现的远程接口实现12。
在上述实现中,客户机调用32直接调用远程接口实现12。此外,客户机应用程序6可以包括万维网或超文本标记语言(HTML)客户机,它将调用32作为间接通过Java小服务程序调用远程接口实现12的超文本传输协议(HTTP)请求发送。
根据用于产生调用并将该调用发送到存储过程程序的特定数据结构,例如输入映射和输出映射,对各优选实施例进行了说明。然而,本技术领域内的技术人员应认识到,可以对客户机应用程序映射到存储过程的输入参数的方式以及存储过程输出如何封装到一个数据对象内的方式进行修改。
在上述实现中,存储过程产生被发送到客户机应用程序的输出。在其它实现中,存储过程不产生返回到客户机应用程序6的输出数据,但是可以将输出发送到其它应用程序或者执行其它操作,例如更新数据库、发送电子邮件等。
在上述实现中,远程接口实现12调用返回返回结果数据集的存储过程。在其它实现中,存储过程可以不产生返回客户机应用程序6的结果数据集,但是可以将结果数据集或其它输出发送到其它应用程序,或者执行某些其它操作,例如更新数据库、发送电子邮件等。
在客户机系统4或网络20内的其它计算设备内可以实现包括远程接口实现12和客户机数据库程序14的应用服务器10或中间件。
为了说明和描述本发明,以上对根据本发明的优选实施例进行了说明。本发明并不完全局限于所披露的特定形式。根据上述教导可以对其进行多种修改和变化。对本发明范围不是由此详细说明限定的,而是由所附权利要求限定的。上述说明、例子以及数据对本发明组成的生产和使用进行了全面描述。因为在不脱离本发明范围内,可以实现根据本发明的许多实施例,所以本发明权利由所附权利要求确定。

Claims (28)

1.一种使数据能够被存取的方法,该方法包括:
从客户机接收调用以调用远程接口方法;
响应调用的远程接口方法,利用远程接口实现存取所接收的调用的参数;
利用存取的参数作为存储过程的输入参数,产生存储过程调用;
将存储过程调用传送到由要执行的调用命名的存储过程;
接收存储过程的输出;
将接收的存储过程的输出插入数据对象;以及
将该数据对象返回客户机。
2.根据权利要求1所述的方法,其中存储过程在数据库服务器内执行并产生输出,其中该输出可以包括为一组输出中的一个成员的输出,该组输出包括数据库表内的一个或多个结果数据集和通过对数据库表内的数据进行存储过程操作获得的一个或多个输出参数。
3.根据权利要求1所述的方法,该方法进一步包括利用远程接口实现对输入映像进行处理,确定客户机调用内的参数以用作存储过程调用的输入参数。
4.根据权利要求1所述的方法,该方法进一步包括:
在存储过程程序完成执行后,接收存储过程输出。
5.根据权利要求1所述的方法,该方法进一步包括对指出存储过程输出如何映射到数据对象的输出映射进行处理。
6.根据权利要求5所述的方法,其中该输出可以包括结果数据集和参数,其中该输出映射指出将接收的结果数据集和参数附加到数据对象的顺序。
7.根据权利要求1所述的方法,该方法进一步包括:
产生用于描述包括在数据对象内的存储过程输出的元数据;以及
将该元数据附加到数据对象。
8.根据权利要求7所述的方法,该方法进一步包括:
利用客户机对接收数据对象内的元数据进行处理以确定如何存取该数据对象的存储过程输出。
9.根据权利要求7所述的方法,其中数据对象包括多个元素,其中存储过程输出包括至少一个结果数据集内的行数据,其中将存储过程输出插入数据对象进一步包括将每个结果数据集的每行中的每个列的数据插入数据对象中的一个元素,并且其中元数据定义每个元素中的数据的结构和数据的类型。
10.根据权利要求7所述的方法,其中数据对象包括多个元素,并且其中存储过程输出可以包括多个输出参数,其中将存储过程输出插入数据对象进一步包括将每个输出参数插入数据对象内的一个元素,并且其中元数据提供关于每个元素中的数据的结构和数据的类型的信息。
11.根据权利要求1所述的方法,其中客户机仅响应调用接收一个具有存储过程输出的数据对象。
12.根据权利要求1所述的方法,其中远程接口实现是以企业JavaBean的方式实现的,并且其中数据对象包括Java可串行化对象。
13.一种使应用程序可以利用存储过程程序的方法,该方法包括:
确定一个存储过程程序,所述存储过程程序产生一个应用程序所需的输出;
产生远程接口实现以响应远程接口方法,所述远程接口实现可以从包括数据的应用程序接收调用,并利用应用程序内的数据用作输入、调用数据库服务器内的存储过程;以及
对远程接口实现产生输出映射,用以确定如何将存储过程输出插入可以被应用程序使用的数据对象内。
14.根据权利要求13所述的方法,其中产生的远程接口实现将元数据插入数据对象内,用于提供关于插入该数据对象的存储过程输出的信息。
15.一种使数据能够被存取的系统,该系统包括:
用于从客户机接收调用以调用远程接口方法的装置;
响应调用的远程接口方法,利用远程接口实现存取所接收的调用的参数的装置;
利用存取的参数作为存储过程输入参数,产生存储过程调用的装置;
用于将存储过程调用传送到由要执行的调用命名的存储过程的装置;
用于接收存储过程的输出的装置;
用于将接收的存储过程的输出插入数据对象的装置;以及
用于将数据对象返回客户机的装置。
16.根据权利要求15所述的系统,其中存储过程在数据库服务器内执行并产生输出,其中该输出可以包括为一组输出中的一个成员的输出,该组输出包括数据库表内的一个或多个结果数据集和通过对数据库表内的数据进行存储过程操作获得的一个或多个输出参数。
17.根据权利要求15所述的系统,该系统进一步包括利用远程接口实现对输入映像进行处理,确定客户机调用内的参数以用作存储过程调用的输入参数的装置。
18.根据权利要求15所述的系统,该系统进一步包括:
在存储过程程序完成执行后,用于接收存储过程输出的装置。
19.根据权利要求15所述的系统,该系统进一步包括用于对指出存储过程输出如何映射到数据对象的输出映射进行处理的装置。
20.根据权利要求19所述的系统,其中该输出可以包括结果数据集和参数,其中该输出映射指出将接收的结果数据集和参数附加到数据对象的顺序。
21.根据权利要求15所述的系统,该系统进一步包括:
用于产生用于描述包括在数据对象内的存储过程输出的元数据的装置;以及
用于将该元数据附加到数据对象的装置。
22.根据权利要求21所述的系统,该系统进一步包括:
用于利用客户机对接收数据对象内的元数据进行处理以确定如何存取该数据对象的存储过程输出的装置。
23.根据权利要求21所述的系统,其中数据对象包括多个元素,其中存储过程输出包括至少一个结果数据集内的行数据,其中将存储过程输出插入数据对象的装置进一步将每个结果数据集的每行中的每个列的数据插入数据对象中的一个元素,并且其中元数据定义每个元素中的数据的结构和数据的类型。
24.根据权利要求21所述的系统,其中数据对象包括多个元素,并且其中存储过程输出可以包括多个输出参数,其中将存储过程输出插入数据对象的装置进一步将每个输出参数插入数据对象内的一个元素,并且其中元数据提供关于每个元素中的数据的结构和数据的类型的信息。
25.根据权利要求15所述的系统,其中客户机仅响应调用接收一个具有存储过程输出的数据对象。
26.根据权利要求15所述的系统,其中远程接口实现是以企业JavaBean的方式实现的,并且其中数据对象包括Java可串行化对象。
27.一种使应用程序可以利用存储过程程序的系统,该系统包括:
用于确定一个存储过程程序的装置,所述存储过程产生一个应用程序所需输出;
用于产生远程接口实现以响应远程接口方法的装置,所述远程接口实现可以从包括数据的应用程序接收调用,并利用应用程序内的数据用作输入、调用数据库服务器内的存储过程;以及
用于对远程接口实现产生输出映射、用以确定如何将存储过程输出插入可以被应用程序使用的数据对象内的装置。
28.根据权利要求27所述的系统,其中产生的远程接口实现将元数据插入数据对象内,用于提供关于插入该数据对象的存储过程输出的信息。
CNB018132995A 2000-08-07 2001-08-01 调用存储过程和访问存储的过程数据的方法和系统 Expired - Fee Related CN1295607C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US22315600P 2000-08-07 2000-08-07
US60/223,156 2000-08-07
US09/845,065 2001-04-27
US09/845,065 US20020016814A1 (en) 2000-08-07 2001-04-27 Method, system, and program for invoking stored procedures and accessing stored procedure data

Publications (2)

Publication Number Publication Date
CN1509434A CN1509434A (zh) 2004-06-30
CN1295607C true CN1295607C (zh) 2007-01-17

Family

ID=26917499

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018132995A Expired - Fee Related CN1295607C (zh) 2000-08-07 2001-08-01 调用存储过程和访问存储的过程数据的方法和系统

Country Status (5)

Country Link
US (1) US20020016814A1 (zh)
CN (1) CN1295607C (zh)
AU (1) AU2001275747A1 (zh)
GB (1) GB2382193A (zh)
WO (1) WO2002013010A2 (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030046364A1 (en) * 2001-06-12 2003-03-06 Lonnie Sisco Web interface
US20030055593A1 (en) * 2001-09-18 2003-03-20 Schlotzhauer Ed O. Method for user variation of a measurement process
US8914807B2 (en) * 2001-09-28 2014-12-16 International Business Machines Corporation Method, system, and program for generating a program capable of invoking a flow of operations
US8924408B2 (en) * 2001-09-28 2014-12-30 International Business Machines Corporation Automatic generation of database invocation mechanism for external web services
US8166006B2 (en) * 2001-09-28 2012-04-24 International Business Machines Corporation Invocation of web services from a database
US6907451B1 (en) 2001-09-29 2005-06-14 Siebel Systems, Inc. Method, apparatus, and system for immediate posting of changes in a client server environment
US8359335B2 (en) * 2001-09-29 2013-01-22 Siebel Systems, Inc. Computing system and method to implicitly commit unsaved data for a world wide web application
US7885996B2 (en) * 2001-09-29 2011-02-08 Siebel Systems, Inc. Method, apparatus, and system for implementing notifications in a framework to support web-based applications
US7461119B2 (en) * 2001-09-29 2008-12-02 Siebel Systems, Inc. Method, apparatus, and system for managing status of requests in a client server environment
US7203948B2 (en) * 2001-09-29 2007-04-10 Siebel Systems, Inc. Method, apparatus, and system for implementing caching of view custom options in a framework to support web-based applications
US7146617B2 (en) 2001-09-29 2006-12-05 Siebel Systems, Inc. Method, apparatus, and system for implementing view caching in a framework to support web-based applications
US7870492B2 (en) * 2001-10-02 2011-01-11 Siebel Systems, Inc. Method, apparatus, and system for managing commands in a client server environment
US7330971B1 (en) 2002-01-11 2008-02-12 Microsoft Corporation Delegated administration of namespace management
EP1363187A1 (en) 2002-05-15 2003-11-19 Sony International (Europe) GmbH Dispatching application steps in a client/server environment
US7051038B1 (en) 2002-06-28 2006-05-23 Microsoft Corporation Method and system for a reporting information services architecture
JP3857259B2 (ja) * 2002-08-14 2006-12-13 日本電信電話株式会社 オブジェクト状態転送方法,オブジェクト状態転送装置およびオブジェクト状態転送プログラム並びにそのプログラムの記録媒体
US20050005259A1 (en) * 2003-03-14 2005-01-06 Infowave Software, Inc. System and method for communication and mapping of business objects between mobile client devices and a plurality of backend systems
US7366777B2 (en) * 2003-05-15 2008-04-29 Sap Aktiengesellschaft Web application router
US7505953B2 (en) * 2003-07-11 2009-03-17 Computer Associates Think, Inc. Performance monitoring of method calls and database statements in an application server
US7660882B2 (en) * 2004-06-10 2010-02-09 Cisco Technology, Inc. Deploying network element management system provisioning services
US8533229B2 (en) * 2004-06-16 2013-09-10 Salesforce.Com, Inc. Soap-based web services in a multi-tenant database system
US7519945B2 (en) * 2004-06-17 2009-04-14 International Business Machines Corporation System and method for supporting data driving a software process using objects of arbitrary data types
CN100412800C (zh) * 2004-12-25 2008-08-20 鸿富锦精密工业(深圳)有限公司 一种用于管理网络服务器内存的方法
US7567968B2 (en) * 2005-01-31 2009-07-28 Microsoft Corporation Integration of a non-relational query language with a relational data store
US20060253497A1 (en) * 2005-05-03 2006-11-09 Bulent Abali System and method for associating computational procedures with stored data objects
US7814498B2 (en) * 2006-05-01 2010-10-12 Microsoft Corporation Loading application resources
US8127304B2 (en) * 2006-05-31 2012-02-28 Rocket Software, Inc. Mapping and communicating data from a user interface to an application program
CN100401707C (zh) * 2006-05-31 2008-07-09 北京和利时系统工程有限公司 一种分布式控制系统中的远程过程调用方法及系统
US7739296B2 (en) * 2006-07-12 2010-06-15 International Business Machines Corporation System and method for virtualization of relational stored procedures in non-native relational database systems
US7620526B2 (en) * 2006-10-25 2009-11-17 Zeugma Systems Inc. Technique for accessing a database of serializable objects using field values corresponding to fields of an object marked with the same index value
US7761485B2 (en) * 2006-10-25 2010-07-20 Zeugma Systems Inc. Distributed database
US9264483B2 (en) 2007-07-18 2016-02-16 Hammond Development International, Inc. Method and system for enabling a communication device to remotely execute an application
US8843438B2 (en) * 2010-07-20 2014-09-23 Evan Ireland Parameter value binding for mobile business objects
GB2509263B (en) * 2011-10-05 2014-07-30 Ibm Monitoring stored procedure execution
US8595251B2 (en) * 2011-11-16 2013-11-26 Verizon Patent And Licensing Inc. Flexible interface module
CN103716356B (zh) * 2012-10-09 2018-02-27 三亚中兴软件有限责任公司 基于web的存储过程操作方法、装置和系统
CN104899106B (zh) * 2014-03-07 2018-05-08 阿里巴巴集团控股有限公司 接口服务异常时的处理方法和装置
US20150289000A1 (en) * 2014-04-04 2015-10-08 CSC Holdings, LLC Programmatic Buying and Selling of Television Advertising
CN104657675A (zh) * 2015-02-12 2015-05-27 中復保有限公司 核心数据安全传输及存储方法
CA2954037A1 (en) * 2016-01-21 2017-07-21 Wal-Mart Stores, Inc. Codeless information service for abstract retrieval of disparate data
US10438500B2 (en) 2016-03-14 2019-10-08 Pearson Education, Inc. Job profile integration into talent management systems
CN106547835B (zh) * 2016-08-04 2019-12-17 贵阳朗玛信息技术股份有限公司 调用数据库存储过程的方法及装置
US10885024B2 (en) * 2016-11-03 2021-01-05 Pearson Education, Inc. Mapping data resources to requested objectives
US10319255B2 (en) 2016-11-08 2019-06-11 Pearson Education, Inc. Measuring language learning using standardized score scales and adaptive assessment engines
CN114051058B (zh) * 2021-09-27 2024-03-26 北京旷视科技有限公司 接口调用方法、平台、电子设备及计算机存储介质
US11403298B1 (en) 2021-10-29 2022-08-02 Snowflake Inc. Extending database external functions with user-defined functions

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615337A (en) * 1995-04-06 1997-03-25 International Business Machines Corporation System and method for efficiently processing diverse result sets returned by a stored procedures
WO1999031556A1 (en) * 1997-12-12 1999-06-24 Northrop Grumman Corporation Scatter noise reduction in holographic storage systems by two-step write

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5218699A (en) * 1989-08-24 1993-06-08 International Business Machines Corporation Remote procedure calls in heterogeneous systems
JPH05506324A (ja) * 1990-03-05 1993-09-16 インターリーフ・インコーポレーテッド 新しい種類のアクティブ状態文書を生成する拡張電子文書処理システム
US5566330A (en) * 1991-08-20 1996-10-15 Powersoft Corporation Method for forming a reusable and modifiable database interface object
WO1994005112A1 (en) * 1992-08-25 1994-03-03 Bell Communications Research, Inc. System and method for creating, transferring, and monitoring services in a telecommunication system
US5644768A (en) * 1994-12-09 1997-07-01 Borland International, Inc. Systems and methods for sharing resources in a multi-user environment
US5701461A (en) * 1995-01-27 1997-12-23 Microsoft Corporation Method and system for accessing a remote database using pass-through queries
US5657447A (en) * 1995-08-31 1997-08-12 International Business Machines Corp. Platform-transparent registration and build of stored procedures and user-defined functions
US5937415A (en) * 1995-12-13 1999-08-10 Sybase, Inc. Data base development system with methods facilitating copying of data from one data source to another
CA2166257C (en) * 1995-12-28 2000-06-13 Margaret H. Li Method for application-program database interface
US6324683B1 (en) * 1996-02-23 2001-11-27 International Business Machines Corporation System, method and program for debugging external programs in client/server-based relational database management systems
US6112025A (en) * 1996-03-25 2000-08-29 Sun Microsystems, Inc. System and method for dynamic program linking
US6212673B1 (en) * 1997-03-31 2001-04-03 International Business Machines Corporation Component-neutral builder interface
US6253368B1 (en) * 1997-03-31 2001-06-26 International Business Machines Corporation Dynamically debugging user-defined functions and stored procedures
US6052631A (en) * 1997-08-08 2000-04-18 Management Systems Data Service, Inc. ("Msds, Inc.") Method and system for facilitating vehicle inspection to detect previous damage and repairs
US5995974A (en) * 1997-08-27 1999-11-30 Informix Software, Inc. Database server for handling a plurality of user defined routines (UDRs) expressed in a plurality of computer languages
US6266666B1 (en) * 1997-09-08 2001-07-24 Sybase, Inc. Component transaction server for developing and deploying transaction- intensive business applications
US5974416A (en) * 1997-11-10 1999-10-26 Microsoft Corporation Method of creating a tabular data stream for sending rows of data between client and server
US6006235A (en) * 1997-11-26 1999-12-21 International Business Machines Corporation Method and apparatus for invoking a stored procedure or a user defined interpreted language function in a database management system
US6243709B1 (en) * 1998-06-29 2001-06-05 Sun Microsystems, Inc. Method and apparatus for loading stored procedures in a database corresponding to object-oriented data dependencies
US6012067A (en) * 1998-03-02 2000-01-04 Sarkar; Shyam Sundar Method and apparatus for storing and manipulating objects in a plurality of relational data managers on the web
US6356946B1 (en) * 1998-09-02 2002-03-12 Sybase Inc. System and method for serializing Java objects in a tubular data stream
US6473807B1 (en) * 1998-12-03 2002-10-29 Merrill Lynch & Co., Inc. System for invocation of CICS programs as database stored procedures
US6438559B1 (en) * 1999-04-02 2002-08-20 Sybase, Inc. System and method for improved serialization of Java objects
US6591295B1 (en) * 1999-11-05 2003-07-08 Oracle International Corp. Methods and apparatus for using multimedia data stored in a relational database in web applications
US6516310B2 (en) * 1999-12-07 2003-02-04 Sybase, Inc. System and methodology for join enumeration in a memory-constrained environment
US6477540B1 (en) * 1999-12-22 2002-11-05 Ncr Corporation Method and apparatus for using Java as a stored procedure language and as an embedded language on a client

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615337A (en) * 1995-04-06 1997-03-25 International Business Machines Corporation System and method for efficiently processing diverse result sets returned by a stored procedures
WO1999031556A1 (en) * 1997-12-12 1999-06-24 Northrop Grumman Corporation Scatter noise reduction in holographic storage systems by two-step write

Also Published As

Publication number Publication date
AU2001275747A1 (en) 2002-02-18
US20020016814A1 (en) 2002-02-07
CN1509434A (zh) 2004-06-30
GB2382193A (en) 2003-05-21
WO2002013010A2 (en) 2002-02-14
GB0304452D0 (en) 2003-04-02
WO2002013010A3 (en) 2004-02-19

Similar Documents

Publication Publication Date Title
CN1295607C (zh) 调用存储过程和访问存储的过程数据的方法和系统
US6636855B2 (en) Method, system, and program for accessing stored procedures in a message broker
US5327559A (en) Remote and batch processing in an object oriented programming system
US7099888B2 (en) Accessing a remotely located nested object
US6209029B1 (en) Method and apparatus for accessing data sources in a three tier environment
US7970862B2 (en) Web services response templates
Roth et al. Information integration: A new generation of information technology
US8074228B2 (en) Systems and methods for providing mockup business objects
US20070185930A1 (en) System, method and program product for adding, updating and removing RDF statements stored on a server
US20040205076A1 (en) System and method to automate the management of hypertext link information in a Web site
MXPA00007085A (es) Sistema de integracion de aplicacion de empresa distribuido extensible.
US7657591B2 (en) Dispatching client requests to appropriate server-side methods
US7263516B2 (en) System for and method of storing and elaborating user preferences
CN111160658B (zh) 一种协同制造资源优配方法、系统和平台
CN101206648A (zh) 网络服务生成系统及方法
CN1526094A (zh) 把传统应用程序合并到分布式数据处理环境中的方法和系统
US8639717B2 (en) Providing access to data with user defined table functions
CN1599912A (zh) 控制系统的数据访问方法
US6917930B1 (en) Database integrity in an internet e-commerce environment
US7831958B2 (en) Systems and methods for distributing updated information
EP1748366A1 (en) A data processing system and method
KR100479333B1 (ko) ebXML 레지스트리에 기반을 둔 UDDI 웹서비스레지스트리 시스템과 그 관리 방법
US20040153449A1 (en) Generic SNMP proxy
US20050086291A1 (en) Distributed handling of associated data sets in a computer network
CN1542653A (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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee