Learning by doing
Trainers with practical experience
Detailed course material
Clear content description
Tailormade content possible
Training that proceeds
In the course Database Design participants learn the techniques and considerations for creating a well-structured database. Design is a crucial part of an effective implementation of a relational database. Modeling data is the basis of building and developing a database. The course uses various case tools to create diagrams.
The course Database Design starts with a discussion of the basic architecture of Database Management Systems. Attention is paid to the Database Schema and the differences between the conceptual, logical and physical model. The role of SQL, Data Definition Language (DDL) and Data Manipulation Language (DML) is also discussed.
Subsequently the phases of Database Design and the components of a database are treated. The ERD Model and the UML Model are covered here. Possible design errors and the application of constraints are also reviewed.
In the ER Modeling section participants learn how to discover the entities and their relationships and map them to tables. They learn the principles of Entity Relationship Modeling. Also treated is how to find and model attribute domains.
Then attention is paid to how entities and their relations can be translated into tables in a relational database. The different mapping strategies for hierarchies of entities are also covered such as table per class, table per hierarchy and the use of discriminator columns.
Next to the use of Unified Modeling Language UML for database design is treated. The UML syntax is discussed as well as UML elements such as interfaces, associations, composition, generalization and dependencies.
The process of normalization, the different normal forms and the removal of duplicate data are explained by means of practical examples. Finally, a number of optimization techniques, such as the use of indexes, that can improve the speed of databases are discussed.
The course Database Design in intended for Web developers, web application developers, database administrator, webmasters and web project managers.
To join the course Database Design no specific skills or knowledge is required. General knowledge of system design is helpful to a proper understanding.
The theory is treated using presentation slides. Demos are used to clarify the theory. There is ample opportunity to practice. The course material is in English. The course times are from 9.30 up and to 16.30.
Participants receive an official certificate Database Design after successful completion of the course.
Module 1 : Intro DBMS
Module 2 : Database Design
Module 3 : Entity Relationship Modeling
|What is a DBMS?
DBMS Abstraction Levels
Types of Databases
DDL and DML Language
|What is Database Design?
Database Design Phases
Benefits of Phases
Conceptual Data Model
Entity Relationship Model
Structuring the Model
Naming Schema Elements
E-R Model Components
Entities versus Entity Classes
Entities versus Attributes
Classification of Attributes
Degree of relationships
Notation of Cardinalities
Removing M:N relations
Resulting ER Diagram
Module 4 : Advanced Er Modeling
Module 5 : Mapping ERD to Tables
Module 6 : UML Modeling
|Weak Entity Set
Generalization and Specialization
Total and Partial Participation
ER Design Decisions
Mapping ERD to Tables
Redundancy As Tables
Entity Set Table Translation
Relationship Table Translation
Mapping Key Constraints
Map Relationship Set to Table
Combine Relationship and Entity Set
Weak Entity Sets
Mapping Weak Entity Sets
Table per Subclass
Table per Hierarchy
|What is UML?
Classes and Objects
Module 7: Normalization
Module 8: Database Optimization
|What is Normalization?
Moving towards 1NF
First Normal Form
Moving to 2NF
Second Normal Form
Third Normal Form
Other Normal Forms
Benefit of Normalization
Relationship Cross Tables
Store Derived Data
All our courses are classroom courses in which the students are guided through the material on the basis of an experienced trainer with in-depth material knowledge. Theory is always interspersed with exercises.
We also do custom classes and then adjust the course content to your wishes. On request we will also discuss your practical cases.
The course times are from 9.30 to 16.30. But we are flexible in this. Sometimes people have to bring children to the daycare and other times are more convenient for them. In good consultation we can then agree on different course times.
We take care of the computers on which the course can be held. The software required for the course has already been installed on these computers. You do not have to bring a laptop to participate in the course. If you prefer to work on your own laptop, you can take it with you if you wish. The required software is then installed at the start of the course.
Our courses are generally given with Open Source software such as Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda and Netbeans. You will receive the digital course material to take home after the course.
The course includes lunch that we use in a restaurant within walking distance of the course room.
The courses are planned at various places in the country. A course takes place at a location if at least 3 people register for that location. If there are registrations for different locations, the course will take place at our main location, Houten which is just below Utrecht. A course at our main location also takes place with 2 registrations and regularly with 1 registration. And we also do courses at the customer’s location if they appreciate that.
At the end of each course, participants are requested to evaluate the course in terms of course content, course material, trainer and location. The evaluation form can be found at https://www.klantenvertellen.nl/reviews/1039545/spiraltrain?lang=en. The evaluations of previous participants and previous courses can also be found there.
The intellectual property rights of the published course content, also referred to as an information sheet, belong to SpiralTrain. It is not allowed to publish the course information, the information sheet, in written or digital form without the explicit permission of SpiralTrain. The course content is to be understood as the description of the course content in sentences as well as the division of the course into modules and topics in the modules.