ENSAE Paris - École d'ingénieurs pour l'économie, la data science, la finance et l'actuariat

Databases initiation

Objective

The database and web course has three objectives.
Firstly, the database section of the course aims to transmit a kernel of elementary knowledge enabling students to use a database management system at a "specialist user" or even "database administrator" level. The course thus includes a general presentation of the functionalities that must be provided by a database management system, a detailed presentation of the relational model, which underlies the database management systems currently on the market, and examinations of two new directions for database management systems, deductive databases and object-oriented databases.
The second part of the course presents web programming. The aim here is to provide the tools needed to construct sophisticated dynamic websites, i.e. sites that make it possible to modify the content of their pages depending on the identity of the user (bank statement example) and the browsing context (shopping basket example). We will take the approach of constructing a site from the design stage to going live. As we shall see, web programming is a composite field: concepts and languages will be introduced as they become useful.
There will be tutorials to help students understand and apply the concepts learned in each part.
Finally, everything covered in the course is put into practice in a project on which the course is assessed.

Planning

  1. INTRODUCTION:History: File management systems - Database management systems; Functionalities of a DBMS.
  2. A FEW DATA MODELS:Entity-relationship model, network model, hierarchical model
  3. THE RELATIONAL MODEL:Data model, manipulation languages, relational algebra, calculus, commercial relational languages; SQL, QEL, QBE; language extensions; embedding in a programming language, pairing with Prolog and rule-based languages
  4. SCHEMA DESIGN:Motivation: updates and anomalies; functional dependencies; relations that are not in first normal form; normal forms; decomposition, no loss of information; no loss of dependencies
  5. CONCURRENT ACCESS:Database consistency, transactions, maintaining consistency with concurrent access
  6. FUTURE DIRECTIONS:Knowledge bases, object-oriented databases.
  7. Introduction to the web and HTML
  8. Presentation of PHP.
  9. Producing specifications
  10. Modelling a site

N.B. : PHP is distributed freely under the GNU GPL licence.