I have not opened a Microsoft Connect item before so I don’t know how the bug reporting and resolution process works at Microsoft for the SQL Server product. I just happened to receive a phone call from one of my customers asking why they are getting the error message below on one of their SQL Server instances.
Cannot show requested dialog “There is no row at position 0”
He is using SQL Server 2008 R2 Management Studio to connect to several SQL Server instances. One particular scenario was that he was getting this error message when retrieving the database properties of one of the SQL Server instances using the Properties dialog box in Management Studio but not on the rest of the instances. Google did return several results on resolving this issue. In case you hit this particular issue, follow the steps outlined below.
- Query the spt_values table in the master database. If you don’t get any results, it means that the table has been truncated. How it got truncated is an exercise for you to figure out
- Look for the u_tables.sql file usually found in the <drive>:Program FilesMicrosoft SQL ServerMSSQL10_50.SQL00MSSQLInstall folder
- Run the u_tables.sql file to re-populate the spt_values table in the master database
After running the SQL script, verify that you can now open up the Properties dialog box from within SQL Server Management Studio.
Now, my curiosity didn’t stop there. I found Microsoft Connect Bug ID 258528 which is marked as Closed and Not Reproducible. I asked the guys from the SQL Server Product Team about why the Connect item was closed and, according to them, it was a terribly written bug. Initially, I had the feeling that they were just trying to avoid me altogether but knowing how dedicated and committed they are to addressing issues with SQL Server and delivering a great database platform, I asked even further. It gave me an understanding of how bug fixes are addressed. Whenever a Microsoft Connect Item is opened, the teams reviewing the item need to identify a handful of information, including
- how to reproduce the problem
- the root cause of the issue
- the impact on users
- the frequency with which the problem occurs
- the cost and risk involved in fixing it
- any available workarounds
This simply means that the more detailed information provided regarding the issue, the easier it is for Microsoft to triage, fix & then verify the issue is actually fixed. It’s like telling your mechanic that your car won’t start when you didn’t even tell him about your broken car key or that the fuel tank is empty, etc. So, if you’re considering opening a Microsoft Connect item for a Microsoft product – whether it’s SQL Server, Microsoft Exchange, SharePoint, etc. – I encourage you to provide as much detailed information as you possibly can to assist Microsoft Product teams in addressing the issue. Effective communication is key to proper problem resolution.
Hey great job you are spreading the solution to this problem
I am updating all those dumb microsoft tickets where it says ‘closed not reproducable’.
Gives me the impression Microsoft don’t give a hoot about their customer.
Hi Martin,
I felt the same way when I saw the status of the Connect item. It’s why I asked the question to the product team. Microsoft does care about their customers but they also need to prioritize their concerns. It’s a simple application of the 80/20 rule – they focus their resources on the top 20% of their priorities. Plus, it’s hard to fix a bug if they can’t reproduce it. That’s why I have outlined a process that will make it easy for them to both reproduce and resolve the issue
Thanks! This was exactly the solution for my problem on SQL server 2008 express edition. But to make it more clear
I would write the source for “u_tables.sql” script like :Program FilesMicrosoft SQL ServerYOUR_SQL_INSTANTMSSQLInstall
Thanks Nels. Actually, the reason I said..”the file is usually found in..” is because each installation is different depending on the installation type – default versus named instance. Great to know that this was helpful to you
Thanks man, saved my life 🙂