• With regards to doing .bak and restores for certain activities although I agree is a quick and fast option isn't always the way to go.

    I concur that doing this you get everything.

    If you doing it to actually replace a database on another system it does take a lot of stuff you may not want such as security information users roles and schemas etc when just doing a back up & restore.

    Using the SSIS "Transfer SQL Objects Task" especially on a smallish DB you select the options to copy just the objects your require.

    This may take a bit of extra time to set the course of what's going to be taken over but does leave the destination database in tact rather than just deleting and restoring from a different SQL instance.