Bluh - Logica Data Modelling

10 important questions on Bluh - Logica Data Modelling

What is logival data modelling?

Conceptual model: requirements engineering
Logical data model: logical design of DB
Physical data model: as stored on disk

= development of a database design
Different paradigms exist
- relational databases
- hierarchical databases
- network databases
- object oriented databases

Relational mode is
- most wide spread model
- underlying model of SQL databases

What are the concepts of the relational model?

A table of values is called a relation

Each row in the table is called a tuple or record

The column names are the attributes

A single cell corresponds to an attribute value

Table names and column names are used to help in interpreting the meaning of the values in each row

What are the relational model principles?

Each cell holds a single value
- no lists
- no row in table, or table in table

Information is NOT stored in a single table
Informatio is divided across multiple tables so as to avoid duplication of information

such as to avoid problems
- when updating information
- when inserting new information
- when deleting information
  • Higher grades + faster learning
  • Never study anything twice
  • 100% sure, 100% understanding
Discover Study Smart

Why is normalisation essential for the relational database design?

In order to have a good design, the information in the database will be split aross several tables in order to
- minimise redundancy (duplication
- minimise anomalies and inconsistencies 

The process of "splitting" tables is called "normalisation"
- it is based on functional dependencies between attribute types
- several steps are involved in the normalisation process

Normalised tables can be recombined by using attributes to cross-reference tables

The normalisation process ensures that no information is lost

So what does the relational model do?

"lossless" splitting and recombination of tables relies on a sound and solid mathematical underpinning
- based on set theory
- relational algebra, relational calculus

Implemented in various commercial database software
- oracle, microsoft, IBM

End user needs to know underlying principles to retrieve information from relational database
- SQL query language

What is joining tables?

Recombining tables is called a "join" operation

Happens through the use of certain attributes as
- "key" in their table of origin and as
- "foreign key" in the referencing table

How are associations made in the relational model

1-to-many association
- identify the key of relation corresponding to the class on the "1" side
- incude this key as an extra colum(s) in the relation corresponding to the class on the many side

many-to-many association
- identify the keys of both relations
- create a new table with the combination of both keys as primary key of this new relation

How does one go from the conceptual model to the relational model

Logical data model is less expressive than UML Class Diagrams

Translation of UML conceptual model to a relational database design
- class -> relation/table
- attributes -> attribute
Associations
- limitation: only 1-to-many associations can be represented through the mechanism key-foreign key
- one to many -> key-foreign key
- many-to-many -> additional table (relation)

What is a unary association?

Follows the same rules
1-to-many -> incorporate the key of the relation as foreign key
many-to-many -> create a new table with twice the key as primary key of this new relation

In the case of the unary associations, it is important to clarify the role of the participants in the association when creating the association table -> distinguish between CNR of whole versus CNR of the part

What are the limitations of the relational model

Enforcing minimum cardinalities
1. [0..1] versus [1..1] = foreign key: "nul" value allowed or not

2. [0..*] versus [1..*]
- a minimum cardinality of 1 cannot be enforced if the maximum cardinality is many
- "a department has at least one employee" cannot be enforced by means of keys & foreign keys

Parallel paths do not ensure ending up with the same object(s) -> same problem as with UML class diagrams

LOOK AT EXAMPLES ^^^^^

The question on the page originate from the summary of the following study material:

  • A unique study and practice tool
  • Never study anything twice again
  • Get the grades you hope for
  • 100% sure, 100% understanding
Remember faster, study better. Scientifically proven.
Trustpilot Logo