UNIVERSITY OF ROCHESTER

DEPARTMENT OF COMPUTER SCIENCE

CSC 296 - Database Systems

Resources

Revised:  2012-03-16

 

Here are some resources you may find useful when taking the CSC Database Systems course:



Email

All course email communication is done via the Google group urcs-db-2012. You do not need a Google account in order to be a member of the group - simply email me a request to be added to the group providing your full name and I'll take care of it. Once you are a member, you will receive all messages sent to the group, and you can sent messages yourself by addressing them to urcs-db-2012 AT googlegroups.com.

There is a benefit to having a google account: it lets you log in to the web site associated with the group, which is http://groups.google.com/group/urcs-db-2012. One good reason to go there is to view the message archive, i.e. all messages that have been sent to the group since it was created.



Software

The software systems you will be using in this course, both for selected homework assignments and for the term project, are collectively referred to as "APP":

You will need PostgreSQL fairly soon, and the other two you will need in the later stages of your term project.

You can download and install Apache, PostgreSQL and PHP individually, or you can download an APP package which contains everything you need. APP packages (or "stacks") come in several flavors, such as WAPP, MAPP and LAPP (for Windows, Mac and Linux, respectively). Although you can find various places on the web where such stacks are available, I highly recommend the Bitnami stacks (http://bitnami.org/article/apache-php-and-postgresql-all-in-one).

Since you are all upper-level CS or CS-like majors, I assume giving you the link where to obtain the software is sufficient, i.e., you know how to find and read documentation, and install and configure software. But if you do run into difficulties, feel free to discuss installation and configuration issues in the course mailing list.

One resource you will be using a lot, I would think, is the PostgreSQL 8.1.23 Documentation. (This is the version installed on betaweb, our LAPP server.)

The preferred way to interact with your database in PHP is to use the PHP Data Objects system (PDO). The definitive documentation of this subsystem is http://www.php.net/manual/en/book.pdo.php. I have also found http://www.kitebird.com/articles/php-pdo.html to be a succinct but fairly complete tutorial on using PDO. Here is the dbtest-pdo.php file that I demonstrated in class, and that I recommend you put into your ~/public_html directory to verify that you can access the postgresql server. (After downloading the file, change the ".txt" to ".php" in the filename.) Your output should be identical to this.

A LAPP server within the CS department has been made available, which will be used to host the term project for each student. However, I strongly encourage you to install APP on your own computer anyway so that you can experiment, modify and test files before "installing" them, etc. Note also that the Apache portion of the course LAPP server is accessible outside the University firewall (i.e., anybody will be able to view your web pages). You will also have terminal access to the server (which you'll need to upload files and access the DBMS). Finally, it will be good to have a working project system on your own pc, since the LAPP server will be decommisioned shortly after the end of the course.