Introduction to Database Design

Offered by:LuciLinX with Anne-Marie Ternes
When:26 October 2010
Where:CRP-Santé, 1A rue Edison, Strassen. Salle Schumpeter (ground floor)
Duration:10h30-12h30 + 13h30-15h30
Requirements:Bring your own laptop.
Restrictions:Maximum 12 participants, first-come first-serve
Registration:By email to Anne-Marie Ternes.
Contact:anne-marie DOT ternes AT crp-sante DOT lu


Databases are nowadays used everywhere for every kind of purposes. In this course, I would like to show you shortly where the "data base" concept comes from, why we need and use them so much nowadays, and why so-called relational databases are still prevailing in an era of object-oriented everything. Focus is put on explaining the concepts in a relational database and their importance in dealing with often critical data sets, this also in the context of often seen sloppy handling of data and their query software. Talking about databases is incomplete without a short detour into data protection legislation, especially so when working with data whose inappropriate loss or disclosure could harm personal privacy.

Practical examples will be used for illustration and exercised in each section, allowing participants to use basic SQL commands to create, manipulate and query a small database. Examples from a patient database with medical information and from a molecular biology database will further illustrate important concepts presented in talk.

If time is left, we can discuss about other concepts used to model and make data available, e.g. in data warehouses, as well as about your experiences with different database management softwares.

Ideally, the outcome of the course will be that the participant knows why an Excel file can be a "database" for certain purposes but is not suited for real-life projects, why it is important to organise your thoughts and gain knowledge before heading into practical database implementation, what are the advantages of a relational database, why it is crucial to take optimal care of your data, what the law can do to help you in that, and finally the participant should not be afraid anymore of SQL and of the bit of command-line typing involved.

Tentative plan:

Part 1: 10h30 - 12h30
  • What is a database?
  • What is a database management system?
  • Short historical overview.
    Speak with your data! But how?
  • Architecture needed to speak with your data.
  • Introduction of a query language: SQL.
    Two perspectives on a database:
  • the client(s)
  • the database manager
    Introduction to relational databases
  • Why are they called relational?
  • Primary keys and foreign keys.
  • Why are they so important?
    Data integrity
  • What is data integrity? Entity integrity, referential integrity, domain integrity.
  • Different ways of ensuring data integrity: user level, application level, database level.
  • Why is it important to enforce data integrity at the nearest-to-data level?
  • How?
Part 2: 13h30-15h30
    Map your mind - then map your database.
  • Conceptual, logical and physical models.
  • Database normalisation: the 4 normal forms.
  • Database optimization: good or bad?
  • Why the SQL query language does not fully comply to the relational theory.
    Data protection.
  • Requirements on the database management level:
  • Data integrity, pertinence, logging, need-to-see access definitions ...
  • Pseudonymisation and anonymisation
  • Data disclosure control, or how publishing results can do harm