Bird
Raised Fist0
SQLquery~5 mins

ER diagram to table mapping in SQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is an ER diagram?
An ER diagram is a visual tool that shows entities (things), their attributes (details), and relationships (connections) between them in a database.
Click to reveal answer
beginner
How do you map an entity from an ER diagram to a table?
Each entity becomes a table. The entity's attributes become columns in that table. The primary key attribute becomes the table's primary key.
Click to reveal answer
intermediate
How are one-to-many relationships represented in tables?
Add a foreign key column in the table on the 'many' side. This foreign key points to the primary key of the 'one' side table.
Click to reveal answer
intermediate
How do you map a many-to-many relationship from an ER diagram?
Create a new table called a junction or associative table. It contains foreign keys referencing the primary keys of the two related tables. These foreign keys together form the composite primary key.
Click to reveal answer
advanced
What happens to weak entities in ER diagram to table mapping?
Weak entities become tables that include their own attributes plus a foreign key referencing the owner entity's primary key. The combination forms the weak entity's primary key.
Click to reveal answer
In ER diagram to table mapping, what does an entity become?
AA table
BA column
CA foreign key
DA relationship
How is a one-to-many relationship represented in tables?
ABy adding a foreign key in the 'many' side table
BBy merging both tables
CBy creating a new table
DBy adding a foreign key in the 'one' side table
What is used to represent a many-to-many relationship in tables?
AA foreign key in one table
BA new junction table
CA primary key in both tables
DNo table needed
What forms the primary key of a weak entity table?
AOnly its own attributes
BOnly the foreign key from owner entity
CCombination of its own attributes and foreign key from owner entity
DNo primary key
Which attribute becomes the primary key in the table mapped from an entity?
AAny attribute
BThe first attribute listed
CThe foreign key
DThe attribute marked as primary key in ER diagram
Explain how to convert a many-to-many relationship from an ER diagram into tables.
Think about how to connect two tables that have many links to each other.
You got /3 concepts.
    Describe the steps to map a weak entity from an ER diagram to a table.
    Weak entities depend on another entity for identification.
    You got /4 concepts.

      Practice

      (1/5)
      1. In an ER diagram, what does an entity typically become when converting to a database schema?
      easy
      A. A table with columns for each attribute
      B. A single column in a table
      C. A database index
      D. A stored procedure

      Solution

      1. Step 1: Understand what an entity represents

        An entity in an ER diagram represents a real-world object or concept with attributes.
      2. Step 2: Map entity to database structure

        Each entity is converted into a table, where each attribute becomes a column in that table.
      3. Final Answer:

        A table with columns for each attribute -> Option A
      4. Quick Check:

        Entity = Table [OK]
      Hint: Entities become tables with columns for attributes [OK]
      Common Mistakes:
      • Confusing entities with indexes
      • Thinking entities become single columns
      • Assuming entities become procedures
      2. Which of the following is the correct way to represent a one-to-many relationship in tables derived from an ER diagram?
      easy
      A. Create a new table with only primary keys from both tables
      B. Add a foreign key column in the 'many' side table referencing the 'one' side
      C. Add a foreign key column in the 'one' side table referencing the 'many' side
      D. Use a trigger to link the two tables

      Solution

      1. Step 1: Understand one-to-many relationship

        One-to-many means one record in the first table relates to many records in the second table.
      2. Step 2: Map relationship to tables

        The 'many' side table gets a foreign key column referencing the 'one' side table's primary key.
      3. Final Answer:

        Add a foreign key column in the 'many' side table referencing the 'one' side -> Option B
      4. Quick Check:

        Foreign key on 'many' side = Add a foreign key column in the 'many' side table referencing the 'one' side [OK]
      Hint: Foreign key goes in the 'many' side table [OK]
      Common Mistakes:
      • Placing foreign key on the 'one' side
      • Creating unnecessary tables for one-to-many
      • Using triggers instead of foreign keys
      3. Given two entities Author(id, name) and Book(id, title, author_id) with a one-to-many relationship from Author to Book, what will be the result of this SQL query?

      SELECT a.name, b.title FROM Author a JOIN Book b ON a.id = b.author_id WHERE a.name = 'Alice';
      medium
      A. Syntax error due to join condition
      B. List of all authors and their books
      C. List of books with no authors
      D. List of all books written by Alice

      Solution

      1. Step 1: Analyze the JOIN condition

        The query joins Author and Book on matching author IDs, linking books to their authors.
      2. Step 2: Apply the WHERE filter

        It filters authors with name 'Alice', so only books by Alice are selected.
      3. Final Answer:

        List of all books written by Alice -> Option D
      4. Quick Check:

        Join + filter by author name = books by Alice [OK]
      Hint: JOIN on foreign key filters books by author [OK]
      Common Mistakes:
      • Confusing join condition causing no results
      • Ignoring WHERE clause filtering
      • Thinking it lists all authors
      4. You have two tables from an ER diagram: Student(id, name) and Enrollment(student_id, course_id). You want to add a foreign key constraint to Enrollment.student_id. Which SQL statement is correct?
      medium
      A. ALTER TABLE Enrollment ADD FOREIGN KEY (student_id) REFERENCES Student(id);
      B. ALTER TABLE Student ADD FOREIGN KEY (id) REFERENCES Enrollment(student_id);
      C. CREATE FOREIGN KEY Enrollment.student_id REFERENCES Student.id;
      D. ALTER Enrollment ADD CONSTRAINT FOREIGN KEY student_id Student(id);

      Solution

      1. Step 1: Identify the correct syntax for adding foreign key

        The standard syntax is ALTER TABLE [table] ADD FOREIGN KEY (column) REFERENCES [other_table](column).
      2. Step 2: Apply to given tables

        Enrollment.student_id references Student.id, so the statement must alter Enrollment table.
      3. Final Answer:

        ALTER TABLE Enrollment ADD FOREIGN KEY (student_id) REFERENCES Student(id); -> Option A
      4. Quick Check:

        ALTER TABLE + ADD FOREIGN KEY + REFERENCES [OK]
      Hint: Foreign key added on referencing table with ALTER TABLE [OK]
      Common Mistakes:
      • Adding foreign key on referenced table
      • Wrong ALTER TABLE syntax
      • Using CREATE FOREIGN KEY instead of ALTER TABLE
      5. Consider an ER diagram with entities Employee(emp_id, name), Project(proj_id, title), and a many-to-many relationship WorksOn between them. How should you map this relationship into tables?
      hard
      A. Add proj_id as a foreign key column in Employee table
      B. Add emp_id as a foreign key column in Project table
      C. Create a new table WorksOn with columns emp_id and proj_id as foreign keys
      D. Merge Employee and Project tables into one

      Solution

      1. Step 1: Understand many-to-many relationships

        Many-to-many means multiple employees can work on multiple projects and vice versa.
      2. Step 2: Map many-to-many to tables

        This requires a new table (junction table) that holds foreign keys from both Employee and Project tables.
      3. Final Answer:

        Create a new table WorksOn with columns emp_id and proj_id as foreign keys -> Option C
      4. Quick Check:

        Many-to-many = junction table with two foreign keys [OK]
      Hint: Many-to-many needs a new table with two foreign keys [OK]
      Common Mistakes:
      • Adding foreign key to only one table
      • Merging unrelated tables
      • Ignoring the need for a junction table