Reducing programming complexity in client applications when interfacing with database servers operating with different programming interfaces
First Claim
1. A method of reducing programming complexity in client applications when interfacing with a plurality of relational database servers operating with a corresponding one of a plurality of programming interfaces, wherein each relational database server facilitates storage and retrieval of data using structured queries according to a structured query language (SQL), wherein each programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in a corresponding database server, said method being implemented in a server provided between client applications and said plurality of relational database servers, said method comprises:
- receiving a first request and a second request from a first client system and a second client system respectively, wherein each of said first request and said second request indicates a procedure contained in a first relational database server for execution, and an identifier of said first relational database server operating with a first programming interface,wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative and said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment,wherein said first relational database server and said first programming interface are respectively contained in said plurality of relational database servers and said plurality of programming interfaces;
generating a first software code and a second software code in response to receiving of said first request and said second request respectively, wherein said first software code is generated according to said first programming language environment indicated in said first request, and said second software code is generated according to said second programming language environment indicated in said second request;
executing said first software code and said second software code to cause said server to perform the actions of;
forming a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server;
sending said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server;
in response to sending said respective plurality of instructions, receiving a respective result from said first relational database server, wherein said result is generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and
forwarding from said server to said first client system, as a response to said first request, said respective result in the form of a first object created according to said first programming language environment,wherein said forwarding forwards from said server to said second client system, as a response to said second request, said respective result in the form of a second object created according to said second programming language environment,wherein said first software code receives said respective result from said first relational database server, creates said first object according to said first programming language environment based on the received result and forwards the created first object according to said first programming language environment to said first client system,wherein said second software code receives said respective result from said first relational database server, creates said second object according to said second programming language environment based on the received result and forwards the created second object according to said second programming language environment to said second client system,whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application.
1 Assignment
0 Petitions
Accused Products
Abstract
Reducing programming complexity in client applications when interfacing with database servers operating with corresponding programming interfaces. In one embodiment, a client system merely specifies a procedure of interest to be executed on a database server of interest, and a system forms the specific instructions according to the programming interface requirements of the specific database server. Thus, the client applications may be implemented independent of the programming interface requirements of the database servers. The client system may also send data indicating the programming environment (e.g., Java or Visual Basic) in which applications are supported (in the client system). The application sever may form the instructions consistent with the programming environment as well, thereby further reducing the complexity of implementations in the client applications.
12 Citations
14 Claims
-
1. A method of reducing programming complexity in client applications when interfacing with a plurality of relational database servers operating with a corresponding one of a plurality of programming interfaces, wherein each relational database server facilitates storage and retrieval of data using structured queries according to a structured query language (SQL), wherein each programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in a corresponding database server, said method being implemented in a server provided between client applications and said plurality of relational database servers, said method comprises:
-
receiving a first request and a second request from a first client system and a second client system respectively, wherein each of said first request and said second request indicates a procedure contained in a first relational database server for execution, and an identifier of said first relational database server operating with a first programming interface, wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative and said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment, wherein said first relational database server and said first programming interface are respectively contained in said plurality of relational database servers and said plurality of programming interfaces; generating a first software code and a second software code in response to receiving of said first request and said second request respectively, wherein said first software code is generated according to said first programming language environment indicated in said first request, and said second software code is generated according to said second programming language environment indicated in said second request; executing said first software code and said second software code to cause said server to perform the actions of; forming a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server; sending said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server; in response to sending said respective plurality of instructions, receiving a respective result from said first relational database server, wherein said result is generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and forwarding from said server to said first client system, as a response to said first request, said respective result in the form of a first object created according to said first programming language environment, wherein said forwarding forwards from said server to said second client system, as a response to said second request, said respective result in the form of a second object created according to said second programming language environment, wherein said first software code receives said respective result from said first relational database server, creates said first object according to said first programming language environment based on the received result and forwards the created first object according to said first programming language environment to said first client system, wherein said second software code receives said respective result from said first relational database server, creates said second object according to said second programming language environment based on the received result and forwards the created second object according to said second programming language environment to said second client system, whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 12)
-
-
8. A non-transitory computer readable medium storing one or more sequences of instructions which when executed on a server system reduces programming complexity in client applications when interfacing with a plurality of relational database servers operating with a corresponding one of a plurality of programming interfaces, wherein each relational database server facilitates storage and retrieval of data using structured queries according to a structured query language (SQL), wherein each programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in a corresponding database server, wherein execution of said one or more sequences of instructions by one or more processors contained in said server system causes said server system to perform the actions of:
-
receiving a first request and a second request from a first client system and a second client system, wherein each of said first request and said second request indicates a procedure contained in a first relational database server for execution and an identifier of said first relational database server operating with a first programming interface, wherein said first relational database server and said first programming interface are respectively contained in said plurality of relational database servers and said plurality of programming interfaces, wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative and said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment; forming a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server; sending said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server; in response to sending said respective plurality of instructions, receiving a respective result from said first relational database server, wherein said result is generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and forwarding from said server system to said first client system, as a response to said first text in said first request, said respective result in the form of a first object created according to said first programming language environment, wherein said forwarding forwards from said server system to said second client system, as a response to said second text in said second request, said respective result in the form of a second object created according to said second programming language environment, whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application, wherein said forming and sending together comprises; generating a first software code and a second software code, which when executed in said server system causes said respective plurality of instructions to be formed and sent to said first relational database server, said first software code further to receive said respective result from said first relational database server, create said first object based on the received result and to forward the created first object according to said first programming language environment to said first client system, said second software code further to receive said respective result from said first relational database server, create said second object based on the received result and to forward the created second object according to said second programming language environment to said second client system, wherein said generating generates, in response to receiving of said first text in said first request, said first software code according to said first programming language environment, and wherein said generating generates, in response to said receiving of said second text in said second request, said second software code according to said second programming language environment. - View Dependent Claims (9)
-
-
10. A server system reducing programming complexity in client applications when interfacing with a plurality of relational database servers operating with a corresponding one of a plurality of programming interfaces, wherein each relational database server facilitates storage and retrieval of data using structured queries according to a structured query language (SQL), wherein each programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in a corresponding relational database server, said server system comprises:
-
a memory to store instructions; a processor to retrieve the instructions stored in said memory, and to execute the retrieved instructions, wherein execution of the retrieved instructions causes said server system to perform the actions of; receiving a first request and a second request from a first client system and a second client system respectively, wherein each of said first request and said second request indicates a procedure contained in a first relational database server for execution and an identifier of said first relational database server operating with a first programming interface, wherein said first relational database server and said first programming interface are respectively contained in said plurality of relational database servers and said plurality of programming interfaces, wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative, said first text being contained in said first request when said first request is sent from said first client system to said server system, wherein said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, said second text being contained in said second request when said second request is sent from said second client system to said server system, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment; forming a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server; sending said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server; in response to sending said respective plurality of instructions, receiving a respective result from said first relational database server, wherein said result is generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and forwarding from said server system to said first client system, as a response to said first text in said first request, said respective result in the form of a first object created according to said first programming language environment, wherein said forwarding forwards from said server system to said second client system, as a response to said second text in said second request, said respective result in the form of a second object created according to said second programming language environment, whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application, wherein said forming and sending together generate a first software code and a second software code, which when executed by said server system causes said respective plurality of instructions to be formed and sent to said first relational database server, said first software code further to receive said respective result from said first relational database server, create said first object based on the received result and to forward the created first object according to said first programming language environment to said first client system, said second software code further to receive said respective result from said first relational database server, create said second object based on the received result and to forward the created second object according to said second programming language environment to said second client system, wherein said first software code is generated according to said first programming language environment, in response to receiving of said first text in said first request, and wherein said second software code is generated according to said second programming language environment, in response to said receiving of said second text in said second request. - View Dependent Claims (11)
-
-
13. A computing system comprising:
-
a first relational database server to facilitate storage and retrieval of data using structured queries according to a structured query language (SQL), wherein a first programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in said relational database server; and a server system comprising at least one processor and at least one memory, said at least one processor to retrieve instructions from said at least one memory and execute the retrieved instructions to cause said server system to; receive a first request and a second request from a first client system and a second client system respectively, wherein each of first request and said second request indicates a procedure contained in a first relational database server for execution and an identifier of said first relational database server operating with a first programming interface, wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative, said first text being contained in said first request when said first request is sent from said first client system to said server system, wherein said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, said second text being contained in said second request when said second request is sent from said second client system to said server system, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment; form a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server; send said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server; in response to sending said respective plurality of instructions, receive a respective result from said first relational database server, wherein said respective results are generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and forward from said server system to said first client system, as a response to said first text in said first request, the corresponding result in the form of a first object created according to said first programming language environment, wherein said forwarding forwards from said server system to said second client system, as a response to said first text in said second request, the corresponding result in the form of a second object created according to said second programming language environment, whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application, wherein said form and send together comprises; generate a first software code and a second software code, which when executed in said server system causes said respective plurality of instructions to be formed and sent to said first relational database server, said first software code further to receive said respective result from said first relational database server, create said first object based on the received result and to forward the created first object according to said first programming language environment to said first client system, said second software code further to receive said respective result from said first relational database server, create said second object based on the received result and to forward the created second object according to said second programming language environment to said second client system, wherein said generate generates, in response to receiving of said first text in said first request, said first software code according to said first programming language environment, and wherein said generate generates, in response to said receiving of said second text in said second request, said second software code according to said second programming language environment.
-
-
14. A method of reducing programming complexity in client applications when interfacing with a plurality of relational database servers operating with a corresponding one of a plurality of programming interfaces, wherein each relational database server facilitates storage and retrieval of data using structured queries according to a structured query language (SQL), wherein each programming interface specifies a format in which instructions are to be provided to cause execution of a corresponding procedure in a corresponding relational database server, said method being implemented in a server system provided between client applications and said plurality of relational database servers, said method comprising:
-
receiving a first request and a second request from a first client system and a second client system respectively, wherein each of said first request and said second request indicates a procedure contained in a first relational database server for execution and an identifier of said first relational database server operating with a first programming interface, wherein said first relational database server and said first programming interface are respectively contained in said plurality of relational database servers and said plurality of programming interfaces, wherein said first request contains a first text representing a corresponding identifier of a first programming language environment in which applications on said first client system are operative, said first text being contained in said first request when said first request is sent from said first client system to said server system, wherein said second request contains a second text representing a corresponding identifier of a second programming language environment in which applications on said second client system are operative, said second text being contained in said second request when said second request is sent from said second client system to said server system, wherein said first text is different from said second text to specify that said first programming language environment is different from said second programming language environment; forming a respective plurality of instructions according to said first programming interface in response to receiving of said first request and said second request, wherein said respective plurality of instructions includes a structured query according to said SQL which specifies for execution said procedure on said first relational database server; sending said respective plurality of instructions, including said structured query according to said SQL, to said first relational database server identified by said identifier to execute said procedure on said first relational database server; in response to sending said respective plurality of instructions, receiving a respective result from said first relational database server, wherein said result is generated by execution of said procedure contained in said respective plurality of instructions on said first relational database server; and forwarding from said server system to said first client system, as a response to said first request, said respective result in the form of a first object created according to said first programming language environment in response to said first text being contained in said first request, wherein said forwarding forwards from said server system to said second client system, as a response to said second request, said respective result in the form of a second object created according to said second programming language environment in response to said second text being contained in said request, whereby a first client application in said first client system accesses said respective result from said first object, and a second client application in said second client system accesses said respective result from said second object, thereby simplifying programming complexity in said first client application and said second client application, wherein said forming and sending together comprises; generating a first software code and a second software code, which when executed in said server system causes said respective plurality of instructions to be formed and sent to said first relational database server, said first software code further to receive said respective result from said first relational database server, create said first object based on the received result and to forward the created first object according to said first programming language environment to said first client system, said second software code further to receive said respective result from said first relational database server, create said second object based on the received result and to forward the created second object according to said second programming language environment to said second client system, wherein said generating generates said first software code according to said first programming language environment, in response to receiving of said first text in said first request, and wherein said generating generates said second software code according to said second programming language environment, in response to said receiving of said second text in said second request.
-
Specification