Database Design I - 1DL300
Contents
- News
- Literature
- Assignments
- Teachers
- Schedule
- Goal, content and prerequisite
- Organization and examination
- OH slides and compendium
- Reading instructions
- Miscellaneuos information
- F.A.Q.
Goal, content and prerequisites
The formal information about goal, content and prerequisites of the course is stated at the course page in the The Student Portal.
Goal: This course will give principles and practical solutions for storage and retrieval of information using a computer system, particularly for large quantities of data, and with an emphasis both on the use of relational database management systems.
Content: This course covers the fundamentals of the database field. The subject of the database field is how to use computers to store and manage, usually large quantities, of data.
If you are going to create a database that models part of the real world, for example a company or some other organisation, the first step is usually to make a description of the structure and function of that part of the real world, i.e. a conceptual data model. In this course we will learn, and use, a method called Entity-Relationship modeling for the conceptualization phase. The conceptual model actually has nothing at all to do with computers, since it is just a description of the world, which could equally well be used e.g. by someone who needs to study the internal functioning of the company.
If you want to create a database in a computer you must first translate the conceptual data model to an implementation data model, which is then used to implement the database. There are several different classes of implementation data models, and in this course we will study the relational data model.
A database is a collection of data. It is usually managed by a special program or program system, called a database management system, or DBMS for short. During the course we will study how a DBMS is structured and how it functions, among other things how it stores its data internally, how it prevents unauthorized access to the data, and how it solves the problems that arise when several users simultaneously want to look at or change the data.
Since we want to access the database, i. e. ask questions about the data, change the data, or define which data that are to be stored, the database management system provides several interfaces, for example a query language. We will look at some of these interfaces, mostly for the relational model. The emphasis is on the query language SQL.
Prerequisites: (1) Elementary knowledge about computers including some experience using Unix or Windows. (2) Knowledge about programming in some common programming language. (3) Knowledge about data structures and algorithms, corresponding to the basic course on Data Structures and Algorithms.