The original database was a MYSQL database that resided on a local JMU linux box. A set of JAVA routines were developed to update and view the database with the goal for online support for users and institutions. The structure of the database was based on the MYSQL options for accessing the data. Different levels of privilege and therefore access could be administered through MYSQL.  The transition to a database at JLAB with a web interface took a different approach. In the process there were substantial changes to the tables. Also PHP replace JAVA as the tool for handling the database management.

This page describes the old first version of the databse.


JMU version of the database (old)

Several issues were confronted during the development and initial use. These ideas and experiences can be found below and along the associated links. This page is a combination of formats

·        Stream of consciousness ideas and solutions, where the documentation never progressed to a final well packaged form. Some of this material is out of date but may be useful.

·        Completed documentation that reflects the status and knowledge at the time the documentation was written.


Changing database

Recommended procedures for changing database.


Viewing database

 The database for CLAS membership has been created and a viewer is available. The viewer has been tested on several computers at JMU and it seems to work. The viewer is written in JAVA 1.2 so you may need to upgrade your java plug-in. (The database is now stored on the same computer as the link that starts the applet so you do not need to adjust your security.)



Database overview

 Database Introduction

The membership committee has implemented a database for managing CLAS membership data.

 A first draft of a the database structure.

We have the following general tasks: (More detailed history of the development can be found by examining the original webpages.)



By August, 2000 the database had been built.

The goal is to follow sound database principles and use MySQL to manage the security. A few people will be responsible for updating most of the database but the institutional representative will handle the general information for each person (email, mailing address etc.). The result is that the information on each person has to be distributed through many institute tables (JMU, RPI etc).

Key points:


There have been several tools developed for managing and viewing the database.

  1. MySQL scripts, only used to set up database.
  2. Microsoft Access for viewing the tables directly. (Due to the relationships this is not an efficient way to examine the full set of data.)
  3. Java Programs:
    1. Database viewer shows the information stored for each person. This allows the restriction of possibilities based on institution and status. All the options are entered via pull-down menus. ( Eventually need to be able to update.
    2. Update representative (
    3. Modify the history table (
    4. Move people to new institutes (
    5. Add a new inst table ( I need to update the columns created or I need to separately run the code that adds some additional columns to this table (


Recent Changes:

Oct 2000- add a column to people table = PUBstat =that allows you to enter an integer that reflects the users interest in publications. I added a table =PUBstatus= with id , comment fields. For id =1 intereested in all pubs, id=2 interested in no pubs.

see the scripts add_col_.. add_PUB… for syntax.

I needed to build a new acsess data base OCT2000 to see these changes.

add institute ROMA using the script Create InstituteTable (need to edit main progr)

add the extra columns using the ADDcoltoInstTable script (need to edit the main prog)

I add ROMA to the institiute table. I really did'nt need to create a ROMA table because ROMA will be a secondary affiliation of Frederico Rhonchetti so I now have the ROMA table empty.

In query I now can write a Database.txt file for the CLTool generation of web lists.

I added This will email people their current database information.

I modified makealias, makehtml, makemlist so that they look for EntryTotal as the signal for the end of the data. The Cltool now generates the web page based on the new Database.txt file.


Dec 22 I update the program to search through multiple time periods.

·  ·  edit the file and set the eT[j] and sT[j] variables

set the noTimePeriods to the correct number and go


New Tasks June 2001:

Decided to classify new members as "probationary" until approved by the membership committee. "Probationary" members have same rights and duties as other members but are not eligible for authorship on papers based on a period when the probationary member was not a member (see new bylaw). All term members are now eligible for authorship on any paper published.

Every meeting I will need to generate a list of probationary members.

I added tables limited, experiments. I filled the experiments table with access and I have a new gui setLimited that puts people and expermients together in the limited table. CLAS query now prints out a file of limited members.


Fall 2002

Correct the CLASquery routine so that only term members are considered under the current time window.  Basically build a new method to get current members. I check to see if any retrievals are new. If so then those entries do not overlap data and I select only term members only. I add these entries to the ones already retrieved.