Yet another blog
What is Cascade and Restrict when we use DROP table in SQL SERVER
A table can have object dependencies. Indexes, views, programs.
When you give a “drop table” command, it will not drop the table that has dependencies unless you include the “cascade” command in the statement. The database programming is written this way to make sure you know the table has dependent objects and makes you explicitly say you want to drop the table and all its dependencies.
CASCADE has the effect of dropping all SQL objects that are dependent on that object. RESTRICT is the default for the drop behavior. RESTRICT looks to see what objects are dependent on the object being dropped. If there are dependent objects, then the dropping of the object does not occur.