Back to articles list
- 1 minutes read

Use Nullable Columns Sparingly

Nullable columns in a database should be used with caution. When a table contains a lot of NULL values, they are difficult to work with: you have to remember to account for NULL values when writing queries and writing code (in many programming languages, they will result in a NullPointerException).

If many columns in a table are nullable, sometimes it is a good idea to move these optional fields into a separate table and leave only a nullable link to the new table.

Let’s see this in action. Imagine a system with some optional user settings. Instead of storing mandatory fields and optional settings in one user table, we can create a separate user_settings table:

Use Nullable Columns Sparingly

All of the fields in the user_settings table can be assigned a NULL value. Both tables are connected with a foreign key constraint which is also nullable (in case the user does not have any optional settings configured).

How to Make a Column Nullable in Vertabelo

Click on the table. In the right pane, look for the Columns section. Find the column you want to make nullable and check the N box next to it.

Use Nullable Columns Sparingly
go to top

Our website uses cookies. By using this website, you agree to their use in accordance with the browser settings. You can modify your browser settings on your own. For more information see our Privacy Policy.