This is a copy of an application I have running at home; it allows me to keep track of my CDs without having to store them in any particular order (if you have more than a few CDs and like to know where they are you can appreciate the problem). While it is a small database with a few tables, it demonstrates editing and reporting capabilities. The interface is programmed in both Perl and PHP, and the database is MySQL. I have a library of Perl and PHP classes to help make writing such applications a little easier. You can read about the technical details below if interested.
If you want to exercise the database, you will need a user name and password. Please contact me and I will set up an account for you.
Alternatively, if you just want to run reports you can log in as User=guest, Password=guest. You will still be able to use the edit forms, but the data will not be saved.
Technical Details
The version of MySQL that this application was written for has some limitations regarding input error checking. In contrast, Oracle has the ability to check inputs according to rules specified in the CREATE statement. For instance, a number input might be checked to be sure that it is greater than 0. MySQL has no such feature, so the error checking must be done outside the database. To help perform this task, I have written a set of Perl and PHP classes that build SQL statements and have the ability to filter inputs in INSERT/UPDATE statements.
Additionally, I have a set of classes that make it convenient to pass database information to scripts through a browser. Briefly, if form inputs are written according to a specified naming scheme the classes will be able to automatically generate SQL statements. This makes the process of writing browser database interfaces much faster than handling inputs on a case by case basis.