Chemistry Reference
In-Depth Information
chapter 12
More on Client and
Web Interfaces to RDBMS
12.1 Introduction
Most of the emphasis in this topic has been on ways of using structured
query language (SQL) and relational database management systems
(RDBMS). Using functions written in SQL and other languages greatly
extends the capabilities of existing RDBMS for handling molecular struc-
tures. Because the RDBMS is run as a server, a client program is necessary
to interact with the RDBMS. Chapter 5 introduced several common client
programs to do this. When developing a more complex system, existing
applicat ions may not sat isf y the needs of the project. In that case, it becomes
necessary to develop new client programs to interact with the RDBMS.
This chapter discusses ways in which more complex client applica-
tions can be written. These programs use SQL to select, insert, delete, or
update tables in the database. Depending on the computer language used
for the client program, a variety of interface libraries is available.
One advantage of using client programs is that they are independent
of the RDBMS. For example, a client program written in Perl and using
Perl::DBI could run equally well using an Oracle or PostgreSQL RDBMS to
store the tables. Of course, there are some differences in SQL syntax among
the various RDBMS. It is also possible to use certain unique features of
one RDBMS that are not available in others. However, with some care, it is
quite possible to write client programs that can easily run correctly when
interfaced with most any RDBMS. Another advantage of using client pro-
grams is that they can be run on any client. This frees the database server
to spend more of its resources on the database itself.
One disadvantage of using client programs is that data must be trans-
ferred to and from the server. Depending on how much data is required,
this can cause a client program to run less efficiently than a server func-
tion run as an extension of the RDBMS.
Most new client programs will benefit from a judicious use of both
new server-side SQL functions and new client functions. It is wise to care-
fully consider which operations are best done on the RDBMS server and
which are done using a client program. There are several suggestions to
consider in designing the best system for a project.
137
Search WWH ::




Custom Search