Bird
0
0

Which SQL statement correctly enforces a one-to-one relationship between Customer and CustomerDetails tables using CustomerID?

easy📝 Syntax Q3 of 15
SQL - Table Relationships
Which SQL statement correctly enforces a one-to-one relationship between Customer and CustomerDetails tables using CustomerID?
ACREATE TABLE CustomerDetails (DetailID INT PRIMARY KEY, CustomerID INT UNIQUE, FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID));
BCREATE TABLE CustomerDetails (DetailID INT PRIMARY KEY, CustomerID INT, FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID));
CCREATE TABLE CustomerDetails (DetailID INT PRIMARY KEY, CustomerID INT, UNIQUE (DetailID), FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID));
DCREATE TABLE CustomerDetails (DetailID INT PRIMARY KEY, CustomerID INT PRIMARY KEY, FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID));
Step-by-Step Solution
Solution:
  1. Step 1: Identify the foreign key

    The CustomerID in CustomerDetails must reference Customer(CustomerID).
  2. Step 2: Enforce uniqueness

    To ensure one-to-one, CustomerID must be UNIQUE in CustomerDetails.
  3. Final Answer:

    CREATE TABLE CustomerDetails (DetailID INT PRIMARY KEY, CustomerID INT UNIQUE, FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID)); correctly uses CustomerID INT UNIQUE with a foreign key constraint.
  4. Quick Check:

    Foreign key + UNIQUE constraint enforces one-to-one [OK]
Quick Trick: Use UNIQUE on foreign key to enforce one-to-one [OK]
Common Mistakes:
MISTAKES
  • Omitting UNIQUE on foreign key column
  • Using primary key on foreign key column incorrectly
  • Not defining foreign key constraint

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More SQL Quizzes