It’s been a while since I’ve been caught up in a round of chainblogging, the blogosphere’s version of a Facebook meme. This time, Denis Gobo tagged me in a post started by Paul Randal. Paul asked us to list the “top-5 things in SQL Server we all wish would just be removed from the product once and for all.” I reviewed other posts, and the good and bad news is that they already listed several of the same things I would have. The good news is I’m apparently not alone; the bad news is that means I need to come up with something original! So while these wouldn’t necessarily be the *first* 5 on my list, they’d still be on the list nevertheless:
Default Autogrowth Options
Okay, so I lied. I’m not completely original. Yes, I know Paul Randal also commented on this one. While I said I would try to come up with only original ones, this one just has to be repeated. I’ve actually this option overlooked in production environments, resulting in thousands of VLF’s. It’s just a terrible default, and it needs to be changed.
Edit Top 200 Rows
This “feature” is just asking for trouble. Any DBA who is managing a SQL Server database should understand how to actually write insert/update/delete statements. Maybe leave the option available in SQL Express, but please remove it from SQL Server Standard & Enterprise.
Debug
There’s nothing wrong with the Debug option, but I think it should be removed as a default option for the toolbar. It’s easily mistaken for “Execute,” which I’ve seen more than one DBA do on occasion.
PIVOT
I understand the need to pivot your data, but let’s face it. PIVOT is a clunky, expensive SQL operation. Let’s move the presentation tasks to the presentation layer (.NET), and reserve the database layer for what it does best.
Update: By popular demand, I have removed PIVOT from this list. Who am I to argue with such fine folks?
Cursors
Okay, okay, I know I can’t actually get rid of this, BUT I think it gets abused way too much. Set-based operations, anyone?
Alrighty, now it’s my turn to tag! I’m not sure if they’ve already been hit, but I’m tagging: