DB2 is a very powerful database engine that you can use to solve some difficult problems in analysis and mathematics. It is a very helpful resource in making some tough concepts easier to understand.
The relational model and relational databases are primarily used for transaction processing in business applications. This can have an impact on how things work at times. For example, a database system can optimize updates and deletes by re-using previously occupied or empty space if a table doesn't have a unique or primary key constraint. If it does have a unique or primary key and a sequence is used as the index, after data is deleted your sequence column will no longer be in sequential order even if your table is REORGanized(compacted, shrank or defragged).
In scientific experiments you probably need your data in sequential order and there is usually no need for updates or deletes. In fact, it is often bad practice to update or delete data in a scientific experiment.
The DB2_Percent.sql does some fairly complex "set based array subscripting." For this to happen the data needs to be in order and a sequential field created. The other scripts have a similar requirement. There are some different ideas and goals presented here than what most transaction processing systems set out to accomplish. It is good to know that the relational model is versatile enough to handle them.
When taking a look at the DB2_CentralValues.sql and the DB2_CentralLimit.sql scripts keep in mind that these are some fundamental concepts in experimental design and analysis. How numbers work. The concepts are hundreds of years old. The computer can crunch numbers quickly so that you can see the how and why these ideas work.
If you are designing an experiment and you need a table of combinations or permutations, the DB2_UniquePairs4.sql, DB2_Cards.sql and DB2_LatinSquare.sql will give you a start. If you need to design an experiment that will eventually yield dose-response curves in pharmacodynamics, these scripts with the DB2_Percent.sql can help with the forethought put into the design and architecture of the experiment.
I hope what is here is helpful for scientists that are interested in using the relational model. I should be able to post some more scripts in the near future.
Most scripts and programs on the HTStools pages are focused on High Throughput Screening(HTS). To find more information and links to sites that focus on HTS take a look at http://www.htscreening.org.
C. Eric Cashon