CELKO (12/5/2012)
In my database I have 99 table that don't have any rows. My question is, it would be good idea if I delete those tables or leave them there.
Better question: how did this happen in the first place:w00t:?
+1 on that! I've seen this happen with many 3rd party installations though. They sometimes install everything although the product level paid for may not use certain tables because certain options aren't available. Still, if you try to cleanup the mess they've left behind, it could break a maintenance contract, support contract, or some form of warranty. It would be like deleting unused job related tables from MSDB if you never ran any jobs.
More to your point (and I whole heartedly agree), these rowless tables are frequently development artifacts that have been forgotten. It's a part of the reason why I strongly suggest that no Developer be allowed any form of "write" access to production and that DBAs do code reviews and excercise change controls.
--Jeff Moden
Change is inevitable... Change for the better is not.