In a family setting there's really no reason not to sing. However, when you're in a more formal setting your probably want to refrain from bursting into song! The dinner table is a place to have "civil conversation". Save the singing for the bar with friends!
In any kind of formal event, singing should wait until after everyone has finished eating and left the table. At family gatherings, however, all bets are usually off, but tell them your food has to settle.