DataBase Browser README file

This is the DataBase Browser (DBB) V.1.0 distribution. This directory contains:

KNOWN-PROBLEMS-1.0 A list of known problems, bugs, unimplemented features, etc.
RELEASE-NOTES-1.0 The relase notes for DBB V.1.0
README-1.0.html This file.
org This is the root of the source tree; it contains the Java sources of all classes used by the DBB.
lib This is where the DBB jarfile is, along with other jarfiles.

Installation

Retrieve the distribution kit for V.1.0 into the directory to where you want to install DBB V.1.0 - in the following, we'll call this directory the installation directory.
Run the following command in the installation directory:

    gunzip -c dbb-1.0.tar.gz | tar xovf -

This will create the installation-directory/dbb-1.0 directory and all its subdirectories.

Getting started

The best way to learn about the DBB is probably to study the examples provided in the org/eso/ohs/dbb/examples directory.

You can also try and run the examples as they are distributed - the DBB distribution packages all you need to compile and run the example browsers. You'll need access to valid V.1.1.7 Java runtime environment; please remember to set the JAVA_HOME environment variable to a correct value, like /home/javad/jdk1.1.7
In order to run the examples you'll also need to set your CLASSPATH environment variable as follows:

    cd installation-directory/dbb-1.0/lib
    setenv CLASSPATH $PWD/dbb.jar:$PWD/jConnect40.jar:$PWD/swingall.jar
    cd -

The example browsers connect to the USUPLINUX Sybase server and use some tables in the opc63 database. We set up the guest Sybase account for you to try out the browser: please contact the USS team for the password.

This version of the DBB will print some debugging information on standard output, including the SQL statements generated when initiating a database query.

ExampleBrowser0

This is the simplest of the example browsers; to run it you should invoke the following command:
   java org.eso.ohs.dbb.examples.ExampleBrowser0 guest password
    
where password is the Sybase account password.

This browser allows you to view data in the eso_users table. Clicking on the Query button will retrieve several thousand rows; the Count button will tell you how many rows would be retrieved without actually retrieving them.

While the query is in progress you can interrupt it by clicking on the Break button.

The columns UserID and Name are displayed in the table. By clicking on the table headers you can sort the rows you just retrieved (sorting is performed in memory); please be aware that sorting several thousand rows can require a few seconds.
The two columns can also be resized and swapped (by stretching or dragging the column headers); notice however that the next query will restore the original layout.

To limit the range of rows which are returned you can use the Name widget in the Selection Criteria area. Just type a string there, like "Corbel", then click again on Query. The search string can contain SQL wildcard characters, like for instance "Cor%"; or it may contain an SQL operator, like "< Cor" (in this case, the typed-in operator less than overrides the default, which is LIKE).

The contents of the Selection Criteria area can be reset by clicking on the Clear button.

You can exit the browser by closing its window, using your window manager's command.

The source file for this browser is org/eso/ohs/dbb/examples/ExampleBrowser0.java

ExampleBrowser1

This more complete example can be started in a similar way:
   java org.eso.ohs.dbb.examples.ExampleBrowser1 guest password
    
In addition to the features offered by the previous example, this browser offer the possibility of selectively displaying some columns of the eso_users table, and sort the result set in a more sophisticated way.

The user can select which columns to retrieve and display by clicking on the Name and E-mail tick boxes in the Selected Columns area. Columns are displayed left-to-right in the order in which they were selected. Note that in this example the UserID column is always retrieved.

The UserID and Name widgets in the Sorting Criteria area are tri-state buttons.
If nothing is displayed (the default), the corresponding column is not considered for sorting.
By clicking once on the widget, an upwards triangle is displayed, and data will sorted be in ascending order on that column.
A second click will display a downward triangle, which implies implies sorting in descending order.
One more click will reset the widget to its default state.
When multiple widgets in the Sorting Criteria area are activated, the sorting conditions are applied in order of activation.

The setting of the Sorting Criteria affects the way the SQL query is generated, and therefore the results displayed when clicking on Query button. However, it also affects the way the Sort button works, that is to say, how the in-memory reordering of the result set is performed.
Try sorting a result set with different combinations of the UserID and Name widgets.

By clicking on the Clear button one can reset the contents of the Selection Criteria, Selected Columns and Sorting Criteria areas.

The source file for this browser is org/eso/ohs/dbb/examples/ExampleBrowser1.java

ExampleBrowser2

This is an example of a three-tier database browser. The client does not connect directly to the Sybase server; rather, it relies on the services of an intermediate application server.

To run this example, you must first activate the RMI registry process (this is needed by all Java RMI applications), then the middle-tier server provided with the distribution:

   rmiregistry &
   java org.eso.ohs.dbb.server.DbbServer \
         host 1199 jdbc:sybase:Tds:pclinnt1.hq.eso.org:55500 \
         opc63 guest password &
    
where host is your hostname (for instance usg1.hq.eso.org) and password is the same as in the previous examples.

At this point you can start the client, passing the URL of the middle-tier server on the command line:

   java org.eso.ohs.dbb.examples.ExampleBrowser2 //host/DBB
    
where host is again your hostname; so, for instance, a complete server URL would be: //usg1.hq.eso.org/DBB

To demonstrate how to define joins among tables, this browser adds a pulldown menu in the Selection Criteria area, through which the operator can select users belonging to one of several countries or organizations. This information is kept in the user_affiliations table; the SQL engine then builds the join conditions between eso_users and user_affiliations.

Apart from that, this example browser looks and performs like ExampleBrowser1. Whether you should use a two- or three-tier architecture depends on the application, its security and performance requirements, the available resources, etc.

The source file for this browser is org/eso/ohs/dbb/examples/ExampleBrowser2.java; for the distributed DBB server it is org/eso/ohs/dbb/server/DbbServer.java


$Revision: 1.2 $. Last modified: Fri Sep 15 09:47:54 MET DST 2000