The CASE tool

What a data modelling tool does: enter the conceptual model, check it, derive the logical then physical model, generate the SQL script, reverse-engineer an existing database and maintain the dictionary.

  • 24 cards
  • 5 topics
  • Free

The outline, topic by topic

Each topic is weighted the way the exam weighs it.

  1. Concepts
  2. Questions
  3. Sort and link
  4. Scenarios
  5. Understand

A few cards from the deck

  • CASE tool: what is it?

    Show the answer

    A tool that draws data models, checks them and derives the rest from them, down to the script that creates the database.

    The model is the single starting point: a change is made in the conceptual model, and the rest is regenerated instead of being edited by hand.

  • Which element of the conceptual model did the tool translate into this table?

    ```sql
    CREATE TABLE contenir (
    num_commande INTEGER NOT NULL,
    ref_produit INTEGER NOT NULL,
    quantite INTEGER NOT NULL,
    PRIMARY KEY (num_commande, ref_produit),
    FOREIGN KEY (num_commande) REFERENCES commande (num),
    FOREIGN KEY (ref_produit) REFERENCES produit (ref)
    );
    `

    • An n,n relationship CONTENIR, carrying the attribute quantite
    • An entity CONTENIR identified by num_commande alone
    • A 1,n relationship between COMMANDE and PRODUIT
    • A reflexive relationship on COMMANDE
    Show the answer

    An n,n relationship CONTENIR, carrying the attribute quantite

    A table whose primary key is made of the two foreign keys is a junction table: it comes from an n,n relationship, and quantite is its own attribute. A 1,n relationship would only have given one foreign key.

  • The tool derives the logical model from the …, then the physical model from the logical one.

    Show the answer

    The tool derives the logical model from the conceptual model, then the physical model from the logical one.

    Each level is computed from the previous one, and each transformation rule is applied automatically.

  • SQL script generation: what is it?

    Show the answer

    Automatic production, from the model, of the statements that create the tables, keys and constraints.

    The script follows the chosen DBMS: the same model gives different types and syntax for PostgreSQL or MySQL.

  • The tool refuses to generate the script: "entity SEANCE has no identifier". What is the cause and the solution?

    • The chosen DBMS is too old; choose a more recent one as target
    • A relationship with CLIENT is missing; add one
    • SEANCE has no key; add an identifier to it
    • The data dictionary is empty; fill it in completely
    Show the answer

    SEANCE has no key; add an identifier to it

    A table with no primary key would allow duplicates: an entity with no identifier would give a table with no key. The tool blocks generation until the model is fixed.