This course is intended for computing sophomores and aims at presenting basic principles of relational DBMS and the practice of these fundamentals. The course content is mainly the following:
Chapter 1: Introduction to databases
Chapter 2: Relational Model
Chapter 3: Relational Algebra
Chapter 4: Standardization
Chapter 5: SQL Language
Chapter 6: Practical work
A set of exercises are included at the end of the document. We added a tutorial section and directed to allow students to apply the concepts learned in the five chapters.
Table of Contents
1.1. Database
1.1.1. Definition
1.1.2. The description of a database
1.1.2.1. Definitions
1.2. Database Management System
1.2.1. Definition
1.2.2. The aims and properties of these systems are manifold
2.1. Introduction
2.2. basic concepts
2.2.1. Attribute
2.2.2. Field
2.2.3. Schematic relationship
2.2.4. Relationship
2.2.5. Degree
2.2.6. Occurrence
2.2.7. cardinality
2.2.8. candidate key
2.2.9. primary key
2.2.10. foreign key
2.3. relational model
2.3.1. Translation of the conceptual model into relational model
2.3.1.1. Rules passages MC objects NCM Relations
2.3.1.2. passing rules of associations MC NCM Relations
3.1. The basic operations
3.2. Expression of the relational algebra
4.1. functional dependence
4.1.1. Introduction
4.1.2. Definition
4.1.3. Graphical representation of functional dependencies
4.1.4. Properties (Armstrong axioms)
4.1.5. elementary functional dependence
4.1.6. direct functional dependence
4.2. The transitive closure
4.3. The minimum coverage
4.4. Closure of a set of attributes
4.4.1. Definition
4.4.2. A closure algorithm
4.5. Research Process key candidates
4.6. poor design
4.7. The decomposition
4.7.1. Definition
4.7.2. Decomposition Lossless Information
4.7.3. Decomposition without loss of DF
4.8. Why normalize?
4.8.1 First Normal Form
4.8.2. Second Normal Form
4.8.3. Third Normal Form
4.8.4. normal form Boyce-Codd
4.9 Decomposition into 3NF
4.10. valid decomposition BCNF
4.11. Decomposition without loss of information: Ullman algorithm
4.11.1. Formalism of the algorithm:
4.11.2. Sample Application
5.1. Basic Structure
Select clause 5.1.2
5.1.3. Where clause
5.1.4. The From clause
5.1.5. The variables tuples
5.1.6. The Order by clause
5.1.7 set operators
5.2. The aggregate functions
5.2.1 aggregates and group by
5.2.2. Aggregates and the having clause
5.2.3. nested queries
5.2.4. The views
5.2.5. Changing relationships
5.3. Sql as ldd
5.3.1. Areas
5.3.2. Creating tables
5.3.3. Schema Manipulation
5.3.4. foreign key
5.3.5. outer join
5.3.6. Mechanism of Rights
5.3.7. The rights in sql
5.3.8. Using Views
TP 1: Creating the database
TP 2: Inserting data
TP 3: Importing and exporting data
TP 4: Selecting Data
TP 5: Data Update
TP 6: Data Deletion
TP 7: Relations between tables
Exercises
Exercises Solutions
Objectives & Core Topics
This work aims to present the fundamental principles of relational database management systems and provide practical training for students. It covers theoretical models, algebraic operations, standardization, and the application of SQL language in real-world database scenarios.
- Theoretical foundations of the relational model.
- Mathematical principles of relational algebra and its operations.
- Normalization techniques to ensure database consistency and validity.
- Practical SQL language implementation and data manipulation.
- Lab-based exercises for hands-on experience with MySQL and phpMyAdmin.
Book Excerpt
4.1.2. Definition
Is a relationship R(A,B,C,) . A determines B or B functionally dependent on A if and only if a=a' ⇒ b=b' That is to say, for any value of A is a single value of B. Note A B.
AT B is wrong, but B C may be true.
example:
R (UV, Day, Hour, Hall, Teacher); F = {Day, Hour, RoomUV Teacher}.
Summary of Chapters
1. Introduction to databases: Defines databases and DBMS, outlining their purpose, architecture levels, and functional properties.
2. Relational model: Introduces basic concepts such as attributes, keys, and the translation of conceptual models into relational structures.
3. Relational Algebra: Details basic operations like union, projection, selection, Cartesian product, and various join types.
4. Standardization: Explains normalization forms, functional dependencies, and algorithms for decomposition to reduce redundancy and maintain consistency.
5. The SQL Language: Provides a comprehensive guide to SQL syntax for queries, data definition, rights management, and views.
6. Practical work: Offers a guide to applying theoretical concepts using tools like phpMyAdmin and MySQL through specific practical tasks.
Keywords
Relational Database, DBMS, Relational Algebra, Normalization, SQL, Functional Dependency, Decomposition, Primary Key, Foreign Key, Data Consistency, Query Language, Database Design, Data Integrity, phpMyAdmin, MySQL
Frequently Asked Questions
What is the primary focus of this publication?
This book focuses on the fundamental principles of relational database management systems (RDBMS) and provides a practical guide for students to master these core technologies.
What are the central topics discussed in the book?
The central topics include the relational model, relational algebra, database normalization, SQL language, and practical database administration using MySQL.
What is the main goal or research question?
The goal is to provide a structured educational resource that bridges the gap between database theory and technical practice for computing students.
Which scientific methodology is employed?
The work employs a pedagogical methodology, combining theoretical definitions with practical examples, mathematical modeling (Armstrong axioms), and algorithmic approaches to normalization.
What subjects are covered in the main section?
The main section covers formal definitions of relational structures, the formalization of dependencies, the logic of SQL queries, and the implementation of database operations.
Which keywords best characterize this work?
Keywords include Relational Database, SQL, Normalization, Relational Algebra, Functional Dependency, and Database Design.
How does the Ullman algorithm contribute to database design?
The Ullman algorithm is used to verify whether a decomposition of a relation is lossless, which is crucial for maintaining data integrity during the design phase.
What role does the 'primary key' play in the normalization process?
The primary key is essential for identifying records uniquely and acts as the anchor for functional dependencies, ensuring the database remains in its intended normal form.
- Citar trabajo
- Dr. Kadri Ouahab (Autor), Dr. Abdelhadi Adel (Autor), 2017, Relational database courses and exercises, Múnich, GRIN Verlag, https://www.grin.com/document/379548