When should we use relations in DB Models? When are the cases when one should define relations in Database and when we should avoid.
well in general you should use it if you are using relational databases. As they give you low level data integrity therefore kinda a "bulletproof" datamodel. The benefits are on the hand and it also helps you down the road if it is a long term project or evolving application since it will provide the logic needed for tools to help you maintain it. For instance tools can map the database model from the db witch helps keep the documentation up to date.
On the down side at least from my experience it needs a little more attention when importing data and doing maintenance tasks. Witch is quite low cost compared to the gains.
Especially if you are working in a team with a bunch of coders it gives that extra bit of security to do not mess up the database.
we can help you a bit more if you tell us more about your use case but in general I would use it.