There are three ways SQL treats this quite normal situation:
ON DELETE CASCADE
which will delete the records that depend on the one you want to delete.
ON DELETE SET NULL
which will set the FK field to NULL
and
ON DELETE RESTRICT
which is the dafault you hit against.
TSQL can also do a
ON DELETE SET DEFAULT
which may also be useful.
There is not a single solution for you (Especially not CASCADE)!
You will have to decide for each FK what will be right clause!
Database design is an art..
This answer is about deleting records not tables; if you really want to delete tables you must first lift the FK relationsships that depend on them.