More tidbits
Work has been hectic for both of us, so please pardon the absence of full-bodied blog posts. Until we get our feet under us, here are a couple of (hopefully) helpful tidbits.

Since you've been good and patient, you can have a treat
Sys.dm_exec_requests
I’m not the most patient person in the world and have a tendency to think that a process has stopped when it’s actually processing away. A few months ago, I needed to run a DBCC on a database with corruption errors. This wasn’t a large database and the DBCC had already been running for about 2 1/2 hours. I put something out on Twitter about whether I should continue the DBCC (which I knew that I should) or worry about whether something had gone horribly wrong. Paul Randal quickly tweeted back to not stop the DBCC and to check to see how far it had gone. That’s when he gave me the information that has helped me through a number of waiting games:
Sys.dm_exec_requests is a DMV that returns a row for every request that is currently executing. Since I was certain that this was the only dbcc checkdb running on this server, the following query eased my mind:
select percent_complete
from sys.dm_exec_requests
where command = ‘dbcc checkdb’
Keeping an eye on that let me know that the process was progressing and kept me from making a stupid mistake. I’ve since used that on long running processes like backups and restores. It also provides a way to tell users that, yes, this is going and it’s x% done
One caveat – the precentage_done field is for specific operations like backups, restores, rollbacks, dbccs, etc. It is not populated for queries
Altering a table in SSMS 2008 (without t-sql)
While I know that we’d all rather use an sqlcmd query through a DAC connection to do anything SQL Server related, there may be times that it might be more expeditious to make the change within SSMS using the Design option.
If you’re in SQL Server 2008 and the table is populated, making any changes within the Design option may cause the following error:
While we were able to do this in SQL Server 2005, it seems like it’s unavailable in 2008. Fortunately, you can do this in SSMS, you just need to set the option to make it available.
In SSMS, go to Tools->Options->expand Designers. Then under Table and Database Designers, uncheck the box next to ‘Prevent saving changes that require table re-creation’. Voila! You can now make all the changes that you want.
As a last minute bit of news, Tim just found out that he’s now a Friend of RedGate. Congratulations, Tim!
SQLGuyChuck
December 2nd, 2009 at 11:56 am #
Table recreation in SSMS can be dangerous and often not necessary if you just code the alter column or add column yourself. SSMS will always create a temporary table and drop existing. If you replicate it, this shouldn’t be used.
-Chuck
Geoff
January 20th, 2010 at 7:31 pm #
Thanks a ton for this “how to” modify tables after thye have been created. Your post will help myself and others save a lot of time!