One feature of SQL Server 2005 Management Studio that I have been known to complain about is the mechanism behind customizing your own hotkeys. Oh, yes, there is an interface for it, but once you've defined a key sequence, it doesn't work like I wanted it to.
In the Management Studio, go to the Tools menu and choose Options. Under Environment, choose Keyboard and you should see a list of possible hotkeys. Three are predefined
ALT+F1 will execute sp_help
Cntl+1 will execute sp_who
Cntl+2 will execute sp_lock
But what if you want to use the new SQL Server 2005 metadata? What I would like is the ability to enter a partial command, and when I enter the hotkey sequence, that text would be copied to my query window. I could then fill in the blanks, so to speak. As it is, the only hotkey I had defined was one that mapped to DBCC FREEPROCCACHE.
I would like to map a key sequence to "SELECT * FROM" and when I enter the keys, the text would appear and I could enter the view or table name. But I can't do that, because SQL Server immediately tries to execute whatever text is associated with the key sequence, and "SELECT * FROM" is illegal syntax, in any version.
(I actually have a vague memory of some prior version of SQL Server allowing me to just enter part of command, and I could polish it up before running. I thought it was Query Analyzer, but I just tested it, and it wasn't true. )
In fact, I just discovered that Management Studio does the QA one better. When I was pointing out the limitations of this behavior in class last week, one of my very bright students discovered that if I have a view or table name highlighted in the query window, I can then use a hotkey sequence defined as "SELECT * FROM" and SQL Server will take the highlighted text and append it to "SELECT * FROM". So if I have sys.dm_tran_locks highlighted in the Query Window, entering my hotkey sequence will execute "SELECT * FROM sys.dm_tran_locks". Now of course I would still prefer to have the text copied to the screen so I could make other changes if desired, but this is sure better than nothing.
(In the SQL Server 2000 QA tool, even that doesn't work. If I highlight a view or table name, and hit my key sequence for "SELECT * FROM", I still get the syntax error "Incorrect syntax near FROM". )