Essential Additional Information for

Fundamentals: Databases (06-21923)
co-taught with
ICY: Databases (06-21980)

(Spring 2010)



Syllabus Page for Fundamentals: Databases (Master's students)

Click here


Syllabus Page for ICY: Databases (Intercalated Year students)

Click here



Lecturer

I encourage you to come to my office hour (see my timetable) to ask questions or make comments (during Term 2 and Term 3). If you cannot manage that time for some important reason, please contact me to arrange an appointment.



Demonstrators (teaching assistants)

Some demonstrators will be on hand to help you in the Thursday practical sessions, and you can email the demonstrators at other times with questions about module material, incl. exercises. They may choose to define particular times of the week at which they will reply to such messages, depending on how many messages there turn out to be.

If you wish to email a demonstrator, please give preference to the MSc students above (for particular administrative reasons I won't bore you with) unless you have a specific motivation to do otherwise (e.g., you've previously talked to Fubiao or Hana about something and you want to pursue it, or you just found the person particularly helpful).



Lecture Slides

click here for main slides so far



Readings from Textbook (updated 23rd March)

The textbook is specified below. (If you're using a different book, tell me.) I expect you to have read the following chapters before the Examination:

You won't need other parts of the book for this module but they're all good stuff and I encourage you to look at them at some stage.



Weekly Exercises

Click here for the exercises, accompanying Additional Notes (Handouts), and answer notes, when they become available.

See a section below for general comments about the exercises in this module.



Last Year's Exercises

You may well find the exercises and answers from previous years useful to you in both doing this year's exercises and getting a better grip on concepts. The previous years' websites have a similar structure to this year's. So for example last year's exercises hang off http://www.cs.bham.ac.uk/~jab/Modules/Databases/08-09/Exercises/: i.e., same URL as this year but with 09-10 replaced by 08-09.

But remember that previous year's exercises were set weekly, not fortnightly, although the SQL stuff has always started in Week 3.

Previous years' assessed exercises are different from this year's, but there will be enough similarity for them to provide useful hints as to how to proceed with many of this year's.

Caution: Do NOT use previous years' handouts as replacements for this year's. I've been making gradual improvements and additions, with substantial improvements in some places this year.



Nature of Lectures

Some lecture material, including material to be used in assessed work, may be of a nature that is difficult to replicate readily by looking at textbooks, etc. Attendance at lectures is therefore irreplaceable as well as obligatory.

You are encouraged to ask questions and instigate discussion during lectures. Because of this, I make no guarantees about what topics I'm going to cover in any particular lecture.

The SLIDES that I will be presenting in lectures will generally be available from this webpage. However, in lectures I may write down things that won't be available electronically. (When these things are written on overhead transparencies I will, if appropriate, make copies available afterwards via the School Library.)

I will mostly not be giving you instruction about the details of SQL or how to use it in lectures. Apart from the fact that there's a lot else to cover in lectures, experience shows that students can learn SQL from the Additional Notes mentioned below, combined with one-to-one help from demonstrators when needed. This allows you to go at your own pace and to try things out as you go along.

However, the conceptual, non-SQL material in lectures will often be very directly helpful to you in writing SQL.



Schedule of Lectures

There is a DOUBLE LECTURE PERIOD every Wednesday of Term 2 from 9:00am to 10:50am, in Lecture Room 3 (room 189) in Sports and Exercise Science (NOTE THE CHANGE) . There will be a ten-minute break from 10:00 till 10:10. (I've set this time so as not to intersect with the ordinary between-lecture breaks, when other students will be milling around and using facilities.)



Schedule and Nature of Practical Sessions

There are weekly "PRACTICAL" SESSIONS scheduled on the timetable: Thursdays 3:00-6:00 (NOTE EXTENSION). This period is available to help you do the the paper exercises and computing exercises that I will be setting.

When there are NO computing exercises to be done, one or more demonstrators will be present in the practical session, which will be in room B07 in the Mechanical Engineering building and will last for ONE HOUR only. The hour will consist of discussion (based on your questions about the exercises and/or questions/comments to you from the demonstrators).

When there ARE computing exercises to be done, the practical sessions will (mainly) be in the Upper Ground floor lab (UG04) in the CS building. I will also arrange for several demonstrators to be available in the lab during the sessions, so that you can get help.

Room LG52 in the Learning Centre will also be available to you for study purposes during the full practical session each Thursday. (NB: The room only accommodates about 10 people. I may need to cancel it at some point.)



Textbook, Additional Notes and Other Reading Material

I expect that you will back up your lecture attendance with reading. You will need to do readings in three main sources:
  1. THE MAIN MODULE TEXTBOOK: P. Rob & C. Coronel, Database Systems: Design, Implementation and Management, International Ed., Cengage Learning, 8th edition, 2009. The 2008 edition (which has a third author, Crockett) is also fine.

      I have used previous editions of the book in the past. These are still good sources for most of the material in the module.


  2. ADDITIONAL NOTES (HANDOUTS) (approx. weekly, distributed via this webpage).

      The notes will, in particular, include a concise introduction to the basic aspects of PostgreSQL. But they also contain important module concepts and theory as well.


  3. ANSWER NOTES ON EXERCISES (available via the Exercises section).


  4. REFERENCE MANUAL for a database management system called PostgreSQL (centred on one of many versions of Structured Query Language or SQL). See below for some further information.

In addition, you are expected to learn any additional information provided in EXERCISES.


The continuously assessed work (exercises) and the examination may draw from compulsory reading material lying within the above items or others, even when the specific topics in the material are not covered in lectures.



Nature of the Continuously Assessed work (Exercises)

The continuously assessed (CA) work is worth 20% of the module mark. The remaining 80% comes from the examination.

The CA work consists of exercises that are set roughly every two weeks starting in week 3. The exercise sets will normally be set on Wednesdays. They will typically contain a mix of theoretical exercises and hands-on computing exercises.

There will be additional, UNassessed, exercises that will be set in Week 1. These will be non-technical (and not involve computer use). They will get you thinking in the right way.

You are encouraged to do the work as far as possible during the scheduled practical sessions.

Tackling the exercises will also help you enormously with the examination. I would not expect someone to be able to get a good mark on, or even pass, the examination if they have not tried to do the exercises.



Broad Nature of the Examination

The examination will largely involve tasks similar to those in the Exercises. There may ALSO be other sorts of question, e.g. asking for explanations of concepts and issues, and questions asking you to integrate material in creative ways.



Previous Examination Papers

NOTES: Just look at SECTION C of the previous examinations. The other sections are on Software Engineering. Don't worry about whether the examinations are marked as being for Intercalated Year students or for MSc students -- the questions are the same.


IGNORE the following information as it is unfortunately useless: the previous examinations are apparently no longer visible on the University site because the module name has changed.

Please see the University's site for previous papers.

NOTE: Before 2009/10 the modules had different names: Fundamentals of CS 2: Databases(for Master's students) and Computer Science Fundamentals 2: Databases (for ICY students). (These names applied from 2005/06.) Use these names, but WITHOUT the "Databases" parts, when looking for previous exam papers. The modules were actually halves of bigger modules that also covered Software Engineering, so for my purposes you should only look at the Databases portion of each paper, namely Section C.

I would advise you against looking at examinations for the (yet differently named) corresponding module from before 2005/06, as my coverage of topics is different from that of the lecturer who was teaching the material then.



Collaboration

On the exercises, you can collaborate in the sense of discussing approaches to problems and helping each other understand topics, but only in FACE-TO-FACE VERBAL INTERCHANGE. At no time should such collaboration involve any sort of electronic or written communication or record-making, and you should not leave any face-to-face discussion with anything written down that you didn't start with. I want the fruits of collaboration to have at least some chance of going through your own brain cells and finger muscles!

Please bear in mind that it's important that YOU get the practice of DOING the work. The CA work is provided to you mainly for purposes of your learning, not as a way of depriving you of marks!



Database Management System - PostgreSQL

PostgreSQL is the relational database management system (RDBMS) that we will be using for exercises in the module. It contains a database definition/manipulation language that is one of many versions of "SQL" (see below for more on this name).



The Name "SQL"

A note on the name "SQL": some sources say that the acronym stands for Structured Query Language. However, it is also expanded by some people as Standard Query Language. You'll find both expansions on the web. A colleague and database expert in the School, Alan Sexton, says:

Despite all this it is certainly a good idea to remember that the QL part does ultimately derive from the phrase "query language." There are various other query-language names of form xy...zQL in Computer Science.

Also note that because of the origin in the name "SEQUEL" some people pronounce the name "SQL" as if it were the English word "sequel".





Last mod 24mar10, 11:36am