FAQ: Manipulation - Constraints

This community-built FAQ covers the “Constraints” exercise from the lesson “Manipulation”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Web Development
Data Science

Learn SQL

FAQs on the exercise Constraints

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head here.

Looking for motivation to keep learning? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!

In the lesson we deleted rows from the celebs table, but after the final exercise, the database schema still lists four rows. Why? Thank you.

If there is a constraint violation from attempting to insert data into a table that doesn’t fit the constraints, will an error message appear or will that data simply not be entered?

This is important because if the data isn’t entered and there is no error message, the developer may not know that some data wasn’t placed into the table.

1 Like

I think we removed all rows that had no information on the Twitter handle. If you
SELECT * FROM celebs;
you’ll see that only 1 row is left. We removed all the others because we only added the Twitter handle for Taylor Swift.

At least that’s how I understand it

This part of MySQL Documentation may answer your question.

1 Like

can you add just NULL? If so, does NULL allow no information and NOT NULL not allow no information?

Can constraints be added to an already existing table? Or do they have to be defined at table creation?

1 Like

Can somebody help me, I didn’t understand the difference between UNIQUE & PRIMARY KEY, thanks.


Hi guys! In the constraints lesson when we run the mentioned command, why is the number of rows showing as 1 instead of 0? We did not insert any data into the table yet.

I had inserted all the code required but instead of ‘Grammy’ I typed “Grammy” with double quotes and it showed me the error text “Make sure the columns have appropriate constraints set.”.
With single quotes it all works ok.

Is that a bug?

Thank you!

Also, i have some questions.
I have typed this code:

DROP TABLE celebs;

  recipient TEXT NOT NULL,
  award_name TEXT DEFAULT 'Grammy'

VALUES (1, "Jaja Bings", "Best Emperor Award");

VALUES (2, "Gogo Jiji", "");

VALUES (3, "", "Best City Award");

SELECT * FROM awards;

and it outputs:

So the questions are:

  1. Why it allows us to write NULL in the “recipient” column and not giving “constraint violation”?
  2. Why it is not showing us “Grammy” as default in the “award_name” column if the value is NULL (when we write “” or NULL itself)?

And also a little sidenote:
if we change id text to “id TEXT PRIMARY KEY” and write

VALUES ("", "Jaja Bings", "Best Emperor Award");

VALUES (NULL, "Gogo Jiji", "");

VALUES (NULL, "", "Best City Award");

that would give us

where all ids are NULL.

  1. Is that how it’s supposed to work in majority DBMSs?

Will be very grateful for your answers!

agreed; can anyone help clarify this?

I have a problem solving this code. Does anyone knows how to solve it?

I’m not certain but it might just be annoyingly strict testing that is looking for that text to be formatted in the same way as the example (which would make this a somewhat deceptive error code). It is worth formatting it like shown in the instructions though since that would be my first guess as to why it fails.

What happened was that i used “ ” instead of ‘ ’ to quote Grammy. As I’m doing this course in a Tablet + keyboard it is easy only to spot the “” key and I believe that in my case this was the one to use, but in the end i could find the right key.

1 Like