My Management Studio wishlist for SQL Server 2011
Inspired both directly and indirectly by fellow MVP Erland Sommarskog, whose programming wishlist I talked about the other day, I have decided to compile a list of my own wish list items, in the same spirit of, "it's never too early." This list is restricted to issues involving Management Studio; I was going to cover all of the management tools that ship with SQL Server, but this quickly proved to be quite an undertaking on its own, and the rest I might leave to someone else.
I have grouped the items in seven different categories, and present them here in no particular order. Some are bugs that should be fixed, and some are suggestions that could use more weight if you are interested in seeing the changes. I did not spend a lot of time describing the items below, so if you don't get enough information here, please feel free to read the Connect feedback items themselves, as there is certainly more detail available there.
Editor / Results
- Support an advanced option to allow downlevel IntelliSense (e.g. in SQL Server Management Studio for the next version, SQL Server 2008 should be supported).
- Restore full Ctrl+N functionality, which doesn't appear to be available in all cases as of SQL Server 2008 RTM.
- Never truncate column names in grid results… currently depending on the font you have chosen, column names get truncated.
Connect #230600 / Connect #230912
- Use the same rules for deciding on column widths in grid results. It appears to partly be a function of the data, but also partly a function of how many resultsets have already been presented. Pulling the exact same data in successive queries, you can see staggered widths for the same columns.
- Support pushpin/auto-hide functionality for the results pane… this is one of the only panes that can't auto-hide and requires keyboard input to show/hide.
- There is a generic item that suggests some improvements to the new tab functionality.
- A while back I suggested improvements to the "save multiple files" dialog you get when you have multiple unsaved files open and try to close Management Studio. Currently you need to save each file one by one, and I think it could be more streamlined.
- It should be harder to accidentally start debugging; currently the debug icon is not very intuitive… it looks like the execute button from Query Analyzer, and many users upgrading directly from 2000 to 2008 tools are going to start debugging sessions accidentally.
- Restore full F8 functionality. Currently this opens Object Explorer (sometimes), but it is no longer possible to close it using the same keyboard shortcut.
- Allow custom folders to organize objects by schema, or functionality, etc.
- Same custom folder organization could be implemented for SQL Server Agent and Linked Servers
- In the list of synonyms, show different icons or group the items to Indicate object type.
- Include synonyms (with slightly different icon) in list of procedures, tables etc., making them more discoverable.
Object Explorer Details
- Do not load all object explorer details data when the window is not even displayed; barring that, at least fix the cursor that runs queries for every db when showing Object Explorer results.
- Rather than generate an error, ignore or bypass Object Explorer Details for objects (e.g. databases) where the user doesn't have access.
- There are some sorting issues in Object Explorer Details as well.
Scripting / Designers
- Fix BIT data type entry in "open table" / "edit top n"… currently this grid only accepts TRUE/FALSE, and does not accept 1, 0, -1, T, F, etc. There are five active items about this… take your pick.
- Stop referencing deprecated objects such as sysobjects.
(There should also be a thrust for not submitting ad hoc sql to the server. And definitely lose any old-style joins… though I couldn't find any examples of this in SSMS 2008.)
- Deprecate open table. 'Nuff said.
- Some scripting options still yield dynamic SQL, which generates scripts that are much harder to read/debug.
- Many people have complained about slow scripting performance; I'm hoping Erland will point me to one of his items that demonstrates this symptom.
SQL Server Agent
- Job step command window should support most editor functionality — syntax highlighting has gone away, tab and shift+tab don't work as expected against selected text, and the parse button behaves differently than in a normal query window. I think IntelliSense could be there too, but didn't feel strong enough about it to submit an item.
- In the Job Activity Monitor and Job History viewer, consistent times need to be shown. In some cases server time is shown, and in some cases client time is shown… this can cause confusion when the server is in a data center on the other side of the country or on the other side of the world. This should be more consistent.
- There should be a top level node for managing schedules, as currently you can only edit a schedule from within one of the jobs it is enclosed in, and it is not clear whether the changes affect that job only, or if they affect all jobs associated with that schedule.
- In the history / log file viewer, there is no ability to sort any columns.
- The history / log file viewer is modal, making it hard to escape and go back to the job steps… or to compare history of two jobs in separate windows (instead of interspersed in the same window). Would be great if this were non-modal and/or allowed multiple.
- Since occasionally an error message is long enough to be clipped, all dialogs should have a maximize button.
- There are several minor issues with dialogs (especially modal) not respecting primary or initial monitor when using SSMS on multiple monitors.
- On many dialogs where you can browse for a folder, you can create a new folder inline; however, there are many examples in SSMS where you can't. The browse or find folder dialogs should all use a common underlying control that allow inline folder creation. I'm surprised this kind of dialog is allowed within Windows logo guidelines, or whatever they're calling their standards compliance policies these days.
- In the grid mode of Top SQL, queries that contain carriage returns, line feeds, tabs etc. end up displayed with ugly boxes.
- With a long query, the tooltip that hovers over the grid row shows part of the SQL, but not all. My suggestion is that if the tooltip can't show the whole query (which is reasonable), it should indicate that there is more behind it, for example with ellipses.
Of course, you will note that most of the items above are my own. However, I am sure I missed many that are equally important, or more so. If you have other Connect items that you feel deserve more exposure, please post them below.