<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Gregg Stark on SQL Server</title><link>http://sqladvice.com/blogs/gstark/default.aspx</link><description>Tips, Tricks, How-To's and Insight on SQL Server</description><dc:language>en</dc:language><generator>CommunityServer 2.1 (Build: 60809.935)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/GreggStarkOnSqlServer" type="application/rss+xml" /><item><title>Determine SQL Server Version</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/0lDcPkfrBXQ/Determine-SQL-Server-Version.aspx</link><pubDate>Wed, 13 Feb 2008 13:43:18 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:39564</guid><dc:creator>gstark</dc:creator><slash:comments>2</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/39564.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=39564</wfw:commentRss><description>&lt;p&gt;If you need to know the version you are currently running of SQL Server you can easily get it by running the following query.&amp;nbsp; &lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:e2457eab-23d4-43da-a2ce-c2cda97c1ade" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;SELECT&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;SQL Server &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
 &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;CONVERT&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;"&gt;),SERVERPROPERTY(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;productversion&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;)) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt; - &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt;
 &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;CONVERT&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;"&gt;),SERVERPROPERTY(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;productlevel&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;)) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt; - &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt;
 &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;CONVERT&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;"&gt;),SERVERPROPERTY(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;edition&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;;subject=Determine+SQL+Server+Version" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;;title=Determine+SQL+Server+Version" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;title=Determine+SQL+Server+Version" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;;title=Determine+SQL+Server+Version" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx&amp;amp;;title=Determine+SQL+Server+Version&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=39564" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/0lDcPkfrBXQ" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2008/02/13/Determine-SQL-Server-Version.aspx</feedburner:origLink></item><item><title>Arithabort Option Affects Stored Procedure Performance</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/kBPJkbmlzxA/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx</link><pubDate>Tue, 12 Feb 2008 21:34:50 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:39533</guid><dc:creator>gstark</dc:creator><slash:comments>9</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/39533.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=39533</wfw:commentRss><description>&lt;p&gt;I have noticed that at times I will have a stored procedure start to take an unusual amount of time to complete.&amp;nbsp; In trying to debug this I grab the SQL that is being called from the application and paste it into SQL Server Management Studio only to have it come back in a second.&amp;nbsp; So I try again from the application, and it takes well over a minute.&amp;nbsp; After hunting around and pulling out my hair as to why this would be I discovered that the connection from the application has the Arithabort option off and in SQL Server Management Studio, by default the Arithabort option is on.&amp;nbsp; So I went ahead and ran a set Arithabort off and then ran the stored procedure within SQL Server Management Studio and sure enough it ran forever.&amp;nbsp; From what I can tell having this option off was causing the query optimizer to pick some horrible query plan.&amp;nbsp; I know SQL Server caches query plans by the connection options, but this just doesn't make much sense to me.&amp;nbsp; The best fix I have come up with for this is to compile the proc with the "with recompile" option.&amp;nbsp; I don't really like this option as SQL Server won't cache the query plan, but I haven't found any other solutions that work consistently.&amp;nbsp; You can do this as such.&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:2bbf4716-4c14-411a-9d92-dc0261266d5a" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;Create&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Procedure&lt;/span&gt;&lt;span style="color:#000000;"&gt; MyStoredProcedure
  &lt;/span&gt;&lt;span style="color:#008000;"&gt;@MyParameter&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;with&lt;/span&gt;&lt;span style="color:#000000;"&gt; Recompile
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt;
   &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I am interested in what others have found for a solution to this problem or any other insight into this as it is quite annoying and if you haven't run into it before it can be quite time consuming and annoying.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;;subject=Arithabort+Option+Affects+Stored+Procedure+Performance" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;;title=Arithabort+Option+Affects+Stored+Procedure+Performance" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;title=Arithabort+Option+Affects+Stored+Procedure+Performance" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;;title=Arithabort+Option+Affects+Stored+Procedure+Performance" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx&amp;amp;;title=Arithabort+Option+Affects+Stored+Procedure+Performance&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=39533" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/kBPJkbmlzxA" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2008/02/12/Arithabort-Option-Effects-Stored-Procedure-Performance.aspx</feedburner:origLink></item><item><title>Off Topic: Strange VMWare Contest Rules</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/UOYQgmI3_Mg/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx</link><pubDate>Thu, 10 Jan 2008 20:13:25 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:38433</guid><dc:creator>gstark</dc:creator><slash:comments>3</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/38433.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=38433</wfw:commentRss><description>&lt;p&gt;This has to go down as one of the strangest requirements for a contest ever.&amp;nbsp; Check out the official rules for VMWare's contest to win an iPhone.&amp;nbsp; In section 4 "Selection of Winner" it states &lt;/p&gt; &lt;p&gt;"Canadian residents, if selected as a winner, must correctly answer a mathematical skill-testing question in order to receive a prize."&lt;/p&gt; &lt;p&gt;Apparently VMWare wants to make sure they are giving the iPhone to "educated" Canadians.&lt;/p&gt; &lt;p&gt;Here is a link to the actual pdf on their site for those that want to see it with their own eyes.&lt;/p&gt; &lt;p&gt;&lt;a title="http://campaign.vmware.com/docs/Legal_Copy_1939.pdf
" href="http://campaign.vmware.com/docs/Legal_Copy_1939.pdf"&gt;http://campaign.vmware.com/docs/Legal_Copy_1939.pdf&lt;br&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I have to believe that this was a joke and someone forgot to remove it...regardless it is definitely odd and very funny.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;;subject=Off+Topic%3a+Strange+VMWare+Contest+Rules" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;;title=Off+Topic%3a+Strange+VMWare+Contest+Rules" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;title=Off+Topic%3a+Strange+VMWare+Contest+Rules" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;;title=Off+Topic%3a+Strange+VMWare+Contest+Rules" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx&amp;amp;;title=Off+Topic%3a+Strange+VMWare+Contest+Rules&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=38433" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/UOYQgmI3_Mg" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2008/01/10/Off-Topic_3A00_-Strange-VMWare-Contest-Rules.aspx</feedburner:origLink></item><item><title>SQL Server 2008 November CTP Released</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/8lRlBuR-7II/SQL-Server-2008-November-CTP-Released.aspx</link><pubDate>Mon, 19 Nov 2007 17:45:46 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:36677</guid><dc:creator>gstark</dc:creator><slash:comments>2</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/36677.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=36677</wfw:commentRss><description>&lt;p&gt;&lt;img src="https://connect.microsoft.com/siteimages/f9ad0f8c-50c1-4b65-aa88-1f225f1127e0.jpg"&gt; &lt;/p&gt; &lt;p&gt;Microsoft has released the latest SQL Server 2008 CTP.&amp;nbsp; This release has tons of new features including Intellisense for SSMS.&amp;nbsp; This one also includes the spatial datatypes which I know a lot of people have been waiting for.&amp;nbsp; You can go get the newest CTP &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=3BF4C5CA-B905-4EBC-8901-1D4C1D1DA884&amp;amp;displaylang=en" target="_blank"&gt;here&lt;/a&gt;.&amp;nbsp; For a list of all new features included in this CTP, you can go &lt;a href="https://connect.microsoft.com/SQLServer/content/content.aspx?ContentID=5470" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;;subject=SQL+Server+2008+November+CTP+Released" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;;title=SQL+Server+2008+November+CTP+Released" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;title=SQL+Server+2008+November+CTP+Released" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;;title=SQL+Server+2008+November+CTP+Released" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx&amp;amp;;title=SQL+Server+2008+November+CTP+Released&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=36677" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/8lRlBuR-7II" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/11/19/SQL-Server-2008-November-CTP-Released.aspx</feedburner:origLink></item><item><title>Increase Animation Speed in SQL Server Management Studio</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/vLU9JwgbF6Q/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx</link><pubDate>Fri, 16 Nov 2007 14:34:51 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:36617</guid><dc:creator>gstark</dc:creator><slash:comments>3</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/36617.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=36617</wfw:commentRss><description>&lt;p&gt;I set all my tool bars to be fly outs and it is fairly annoying how slow the animation is.&amp;nbsp; I found this link and decided to try it out and it works great!&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/euanga/archive/2007/10/01/ssms-window-animation-speed.aspx"&gt;http://blogs.msdn.com/euanga/archive/2007/10/01/ssms-window-animation-speed.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I would be interested in knowing other configuration settings you can change in that file as well.&amp;nbsp; Let me know if you know of any others.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;;subject=Increase+Animation+Speed+in+SQL+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;;title=Increase+Animation+Speed+in+SQL+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;title=Increase+Animation+Speed+in+SQL+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;;title=Increase+Animation+Speed+in+SQL+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx&amp;amp;;title=Increase+Animation+Speed+in+SQL+Server+Management+Studio&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=36617" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/vLU9JwgbF6Q" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/SQL+Server+Management+Studio/default.aspx">SQL Server Management Studio</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/11/16/Increase-Animation-Speed-in-SQL-Server-Management-Studio.aspx</feedburner:origLink></item><item><title>Change Login's Default Database in SQL Server</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/8zAcX-V3CSA/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx</link><pubDate>Tue, 16 Oct 2007 12:18:33 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:35714</guid><dc:creator>gstark</dc:creator><slash:comments>1</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/35714.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=35714</wfw:commentRss><description>&lt;p&gt;If you have ever dropped a database and found yourself not able to login because your default database no longer exists you know it can be quite annoying.&amp;nbsp; You can still connect through query analyzer by connecting to a different database, but you won't be able to do anything through the object explorer as it always defaults to your default database.&amp;nbsp; The sql below will solve your problems.&lt;/p&gt; &lt;p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:1a314a52-7805-46e3-bb16-46f7982f5da3" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;alter&lt;/span&gt;&lt;span style="color:#000000;"&gt; login  MyLogin
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;with&lt;/span&gt;&lt;span style="color:#000000;"&gt; default_database &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; master
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;If you need to alter a login that is using windows authentication use the following code.&amp;nbsp; The only difference is you just have to specify the domain and the directory login and put it in brackets.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:77cc8f04-1356-4f82-bd41-7b05d3f3b4d9" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;alter&lt;/span&gt;&lt;span style="color:#000000;"&gt; login  &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;MyDomain\MyLogin&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;with&lt;/span&gt;&lt;span style="color:#000000;"&gt; default_database &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; master
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;I hope this helps and if not at least I will be able to easily find the solution next time I run into it.&amp;nbsp; &lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;;subject=Change+Login%27s+Default+Database+in+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;;title=Change+Login%27s+Default+Database+in+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;title=Change+Login%27s+Default+Database+in+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;;title=Change+Login%27s+Default+Database+in+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx&amp;amp;;title=Change+Login%27s+Default+Database+in+SQL+Server&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=35714" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/8zAcX-V3CSA" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/SQL/default.aspx">SQL</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Database+Maintenance/default.aspx">Database Maintenance</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/10/16/Change-Login_2700_s-Default-Database-in-SQL-Server.aspx</feedburner:origLink></item><item><title>Retrieve Index Details and Columns in Sql Server 2005</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/Gv38LZ4GM3I/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx</link><pubDate>Wed, 10 Oct 2007 13:49:05 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:35554</guid><dc:creator>gstark</dc:creator><slash:comments>1</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/35554.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=35554</wfw:commentRss><description>&lt;p&gt;I frequently need to look at what indexes are on a table and I am really not a fan of using object explorer in SSMS as I like to stay in the query window.&amp;nbsp; Typically if I want information about a table I simply highlight the table name in the query window and hit Alt-F1.&amp;nbsp; If you aren't familiar with keyboard shortcuts in SSMS see my post &lt;a href="http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx" target="_blank"&gt;here&lt;/a&gt;.&amp;nbsp; While this does give you the indexes that are on the table and it will show you the equality and inequality columns on the index, it won't show you the included columns on the index.&amp;nbsp; So I decided to dig into the Sql Server Dynamic Management Views (DMVs) and write a query to return all the information about an index or even all indexes on a table.&amp;nbsp; Here is what I came up with.&amp;nbsp; This will return all indexes for a table.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:5a05b045-d881-48c2-99af-53b39194c144" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_name&lt;/span&gt;&lt;span style="color:#000000;"&gt;(i.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; TableName, i.name &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; IndexName, c.name &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; ColumnName,
       i.Type_Desc, ic.Is_Included_Column, key_ordinal
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.indexes i 
  &lt;/span&gt;&lt;span style="color:#808080;"&gt;join&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.Index_columns ic &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;on&lt;/span&gt;&lt;span style="color:#000000;"&gt; ic.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; i.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;and&lt;/span&gt;&lt;span style="color:#000000;"&gt;  ic.index_id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; i.index_id
  &lt;/span&gt;&lt;span style="color:#808080;"&gt;join&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.columns c &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;on&lt;/span&gt;&lt;span style="color:#000000;"&gt; c.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; ic.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;and&lt;/span&gt;&lt;span style="color:#000000;"&gt; c.column_id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; ic.column_id
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_name&lt;/span&gt;&lt;span style="color:#000000;"&gt;(i.&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;MyTable&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;order&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;by&lt;/span&gt;&lt;span style="color:#000000;"&gt; i.type_desc, i.name, Is_Included_Column &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;asc&lt;/span&gt;&lt;span style="color:#000000;"&gt;, ic.key_ordinal&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Let me know if you have any questions or improvements.&amp;nbsp; &lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;;subject=Retrieve+Index+Details+and+Columns+in+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;;title=Retrieve+Index+Details+and+Columns+in+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;title=Retrieve+Index+Details+and+Columns+in+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;;title=Retrieve+Index+Details+and+Columns+in+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx&amp;amp;;title=Retrieve+Index+Details+and+Columns+in+Sql+Server+2005&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=35554" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/Gv38LZ4GM3I" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Database+Maintenance/default.aspx">Database Maintenance</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/10/10/Retrieve-Index-Details-and-Columns-in-Sql-Server-2005.aspx</feedburner:origLink></item><item><title>Archive and Compress Data from SQL Server</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/UFlsQLcmfXA/Archive-and-Compress-Data-from-SQL-Server.aspx</link><pubDate>Thu, 27 Sep 2007 12:11:43 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:35184</guid><dc:creator>gstark</dc:creator><slash:comments>2</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/35184.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=35184</wfw:commentRss><description>&lt;p&gt;I &lt;a href="http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx" target="_blank"&gt;recently blogged&lt;/a&gt; about deleting off data from a table by looping through one day at a time.&amp;nbsp; Strangely enough I had a similar need pop up a few days later although this time I wanted to keep the data around just in case I need it later.&amp;nbsp; I really didn't want to put the data into another table so I decided it might be nice to dump the data to a file and then zip it up into a zip file per day.&amp;nbsp; This way if I ever need the data again I can easily bcp the data back into the original table.&amp;nbsp; On my server I actually &lt;/p&gt; &lt;p&gt;This actually was pretty straightforward to do.&amp;nbsp; Basically we can just loop through the data by a given interval (in my case I chose a day), BCP the data to a file, zip the file, and finally delete the data.&amp;nbsp; Here is what my code looks like.&amp;nbsp; Once again I used a numbers table as in my previous post.&amp;nbsp; One item to note is that you will need some executable to do the zipping of the file.&amp;nbsp; In this case I just used zip.exe.&amp;nbsp; Also if you are on 2005 you will need to &lt;a href="http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx" target="_blank"&gt;enable xp_cmdshell&lt;/a&gt; as well.&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:a085bf01-3cd9-4280-9e27-f80e45141a43" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@EndDate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@QueueVendorOrderActivityID&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;uniqueIdentifier&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1000&lt;/span&gt;&lt;span style="color:#000000;"&gt;)

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;9/01/2007&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@enddate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;9/15/2007&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;cursor&lt;/span&gt;&lt;span style="color:#000000;"&gt; forward_only read_only
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;for&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;dateadd&lt;/span&gt;&lt;span style="color:#000000;"&gt;(d,&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; Numbers
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;datediff&lt;/span&gt;&lt;span style="color:#000000;"&gt;(d, &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#008000;"&gt;@enddate&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;order&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;by&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;open&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;while&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;begin&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;fetch&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;next&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;into&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;font-weight:bold;"&gt;@@fetch_status&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;break&lt;/span&gt;&lt;span style="color:#000000;"&gt;;
    &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; build cmd string to execute for bcping out the data  &lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;bcp &amp;quot;select * from MyTable where createdate between &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'''&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'''&lt;/span&gt;&lt;span style="color:#FF0000;"&gt; and dateadd(d, 1, &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'''&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'''&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;)&amp;quot; queryout c:\MyTable&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;.dat -Umyuser -Pmypass -c&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;exec&lt;/span&gt;&lt;span style="color:#000000;"&gt; xp_cmdshell &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; Now zip the file that we created.&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;c:\zip c:\MyTable&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;.zip c:\MyTable&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;.dat&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;exec&lt;/span&gt;&lt;span style="color:#000000;"&gt; xp_cmdshell &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    
    &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; Delete the raw file&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;del c:\MyTable&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;112&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;.dat&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;exec&lt;/span&gt;&lt;span style="color:#000000;"&gt; xp_cmdshell &lt;/span&gt;&lt;span style="color:#008000;"&gt;@cmd&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    
    &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; delete all the data that we just archived out from the table.&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;delete&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; MyTable &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; createdate &lt;/span&gt;&lt;span style="color:#808080;"&gt;between&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;and&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;dateadd&lt;/span&gt;&lt;span style="color:#000000;"&gt;(d, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;end&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;close&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;deallocate&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;So far this seems to be working fairly well.&amp;nbsp; Let me know if you see any issues with this or have any other tips.&amp;nbsp; &lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;;subject=Archive+and+Compress+Data+from+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;;title=Archive+and+Compress+Data+from+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;title=Archive+and+Compress+Data+from+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;;title=Archive+and+Compress+Data+from+SQL+Server" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx&amp;amp;;title=Archive+and+Compress+Data+from+SQL+Server&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=35184" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/UFlsQLcmfXA" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/09/27/Archive-and-Compress-Data-from-SQL-Server.aspx</feedburner:origLink></item><item><title>Enable XP_CMDSHELL in SQL Server 2005</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/LP4zF1xrAxg/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx</link><pubDate>Thu, 27 Sep 2007 11:54:36 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:35183</guid><dc:creator>gstark</dc:creator><slash:comments>2</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/35183.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=35183</wfw:commentRss><description>&lt;p&gt;I needed to use xp_cmdshell recently and discovered that it isn't on by default on SQL Server 2005.&amp;nbsp; I had to dig a bit to find out how to enable it.&amp;nbsp; The code is very simple.&amp;nbsp; Figured I would blog it here so I can easily find it next time.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:16c36dcd-2b77-4c44-bb5c-374ad59318ae" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;EXECUTE&lt;/span&gt;&lt;span style="color:#000000;"&gt; sp_configure &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;show advanced options&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;RECONFIGURE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WITH&lt;/span&gt;&lt;span style="color:#000000;"&gt; OVERRIDE
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;EXECUTE&lt;/span&gt;&lt;span style="color:#000000;"&gt; sp_configure &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;xp_cmdshell&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;1&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;RECONFIGURE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WITH&lt;/span&gt;&lt;span style="color:#000000;"&gt; OVERRIDE
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;EXECUTE&lt;/span&gt;&lt;span style="color:#000000;"&gt; sp_configure &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;show advanced options&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;RECONFIGURE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WITH&lt;/span&gt;&lt;span style="color:#000000;"&gt; OVERRIDE
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;;subject=Enable+XP_CMDSHELL+in+SQL+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;;title=Enable+XP_CMDSHELL+in+SQL+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;title=Enable+XP_CMDSHELL+in+SQL+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;;title=Enable+XP_CMDSHELL+in+SQL+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx&amp;amp;;title=Enable+XP_CMDSHELL+in+SQL+Server+2005&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=35183" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/LP4zF1xrAxg" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/SQL/default.aspx">SQL</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Database+Maintenance/default.aspx">Database Maintenance</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/09/27/Enable-XP_5F00_CMDSHELL-in-SQL-Server-2005.aspx</feedburner:origLink></item><item><title>Iterate Over a List of Dates using a Numbers table in SQL</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/dFDzw2hWats/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx</link><pubDate>Wed, 19 Sep 2007 13:40:30 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:34941</guid><dc:creator>gstark</dc:creator><slash:comments>6</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/34941.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=34941</wfw:commentRss><description>&lt;p&gt;Recently I was helping &lt;a href="http://aspadvice.com/blogs/ssmith/" target="_blank"&gt;Steve&lt;/a&gt;&amp;nbsp;archive off a bunch of data from one of his tables. Unfortunately he didn't have a ton of diskspace to use some of the techniques I normally would.&amp;nbsp; Steve &lt;a href="http://aspadvice.com/blogs/ssmith/archive/2007/09/14/Using-PowerShell-to-Automate-a-SQL-Task.aspx" target="_blank"&gt;recently posted a solution&lt;/a&gt; using powershell to do this.&amp;nbsp; I told him&amp;nbsp;about an easy&amp;nbsp;way to do this using a cursor and&amp;nbsp;a numbers table and he&amp;nbsp;told me to blog it.&amp;nbsp; This is an excellent use of a numbers table which if you don't have one of these in your database, you should create one.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Here is a script to create a numbers table.&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:b4202159-4993-4691-9d54-78635f48ccb3" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;CREATE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;TABLE&lt;/span&gt;&lt;span style="color:#000000;"&gt; dbo.Numbers
(
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;int&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;IDENTITY&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;PRIMARY&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;KEY&lt;/span&gt;&lt;span style="color:#000000;"&gt;
)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@MaxNumber&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;int&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@MaxNumber&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;65535&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WHILE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;BEGIN&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;INSERT&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;INTO&lt;/span&gt;&lt;span style="color:#000000;"&gt; dbo.Numbers &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;DEFAULT&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;VALUES&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;IF&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;scope_identity&lt;/span&gt;&lt;span style="color:#000000;"&gt;() &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@MaxNumber&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;BEGIN&lt;/span&gt;&lt;span style="color:#000000;"&gt;
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;BREAK&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;END&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;END&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So basically Steve wanted to delete all data out of a table one day at a time for a date range and then shrink down the log to avoid .&amp;nbsp; The easiest way I could think of to do this is to create a cursor of all the dates in that date range and then loop through them.&amp;nbsp; Notice the join to the number table for all Numbers between 0 and the datediff of the start and end date.&amp;nbsp; Here is the code...&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:6567c0f7-1ec0-4803-a791-9b333c7166b9" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@enddate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; Declare the dates &lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;01/01/2007&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@enddate&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;10/01/2007&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;datetime&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;declare&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;cursor&lt;/span&gt;&lt;span style="color:#000000;"&gt; forward_only 
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;for&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;dateadd&lt;/span&gt;&lt;span style="color:#000000;"&gt;(d,&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; Numbers
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;datediff&lt;/span&gt;&lt;span style="color:#000000;"&gt;(d, &lt;/span&gt;&lt;span style="color:#008000;"&gt;@startdate&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#008000;"&gt;@enddate&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;order&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;by&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Number&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;open&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;while&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;begin&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;fetch&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;next&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;into&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@period&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;font-weight:bold;"&gt;@@fetch_status&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;break&lt;/span&gt;&lt;span style="color:#000000;"&gt;;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;DELETE&lt;/span&gt;&lt;span style="color:#000000;"&gt; stats &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WHERE&lt;/span&gt;&lt;span style="color:#000000;"&gt; period &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@Period&lt;/span&gt;&lt;span style="color:#000000;"&gt;

  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;BACKUP&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;LOG&lt;/span&gt;&lt;span style="color:#000000;"&gt; stats &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WITH&lt;/span&gt;&lt;span style="color:#000000;"&gt; NO_LOG
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;DBCC&lt;/span&gt;&lt;span style="color:#000000;"&gt; SHRINKFILE (stats_log, &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;2&lt;/span&gt;&lt;span style="color:#000000;"&gt;)        

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;end&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;close&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;deallocate&lt;/span&gt;&lt;span style="color:#000000;"&gt; datecursor&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here is a &lt;a href="http://www.sql-server-performance.com/articles/dev/numbers_tsql_p2.aspx" target="_blank"&gt;link&lt;/a&gt; to a good post on other uses of a numbers table.&amp;nbsp; As always feel free to comment on any improvements or ask any questions.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;;subject=Iterate+Over+a+List+of+Dates+using+a+Numbers+table+in+SQL" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;;title=Iterate+Over+a+List+of+Dates+using+a+Numbers+table+in+SQL" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;title=Iterate+Over+a+List+of+Dates+using+a+Numbers+table+in+SQL" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;;title=Iterate+Over+a+List+of+Dates+using+a+Numbers+table+in+SQL" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx&amp;amp;;title=Iterate+Over+a+List+of+Dates+using+a+Numbers+table+in+SQL&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=34941" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/dFDzw2hWats" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/09/19/Iterate-Over-a-List-of-Dates-using-a-Numbers-table-in-SQL.aspx</feedburner:origLink></item><item><title>Remove Extra Spaces when Pasting from Outlook to Sql Server Management Studio</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/4FrWf9pfVt0/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx</link><pubDate>Fri, 14 Sep 2007 14:01:01 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:34820</guid><dc:creator>gstark</dc:creator><slash:comments>2</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/34820.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=34820</wfw:commentRss><description>&lt;p&gt;I seem to have this problem that when I paste sql code from my email into Sql Server Management Studio that it doubles all the line&amp;nbsp;breaks and I have to go and remove them all.&amp;nbsp; Most of the time this isn't a big deal because the Sql is only a couple lines.&amp;nbsp; However if you get a ton of Sql emailed to you it can be quite annoying.&amp;nbsp; I finally found a way to quickly get rid of them.&amp;nbsp; Simply bring up the find and replace window and change the find to use Regular Expressions.&amp;nbsp; Then do a find on \n\n and replace that with \n.&amp;nbsp; &lt;/p&gt; &lt;p&gt;If anyone knows of a way to change a setting in Outlook to avoid this please let me know.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;;subject=Remove+Extra+Spaces+when+Pasting+from+Outlook+to+Sql+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;;title=Remove+Extra+Spaces+when+Pasting+from+Outlook+to+Sql+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;title=Remove+Extra+Spaces+when+Pasting+from+Outlook+to+Sql+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;;title=Remove+Extra+Spaces+when+Pasting+from+Outlook+to+Sql+Server+Management+Studio" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx&amp;amp;;title=Remove+Extra+Spaces+when+Pasting+from+Outlook+to+Sql+Server+Management+Studio&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=34820" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/4FrWf9pfVt0" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/09/14/Remove-Extra-Spaces-when-Pasting-from-Outlook-to-Sql-Server-Management-Studio.aspx</feedburner:origLink></item><item><title>Retrieve File Contents using SQL Server 2005 SQL CLR</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/6UDINTwZ8tM/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx</link><pubDate>Thu, 06 Sep 2007 18:25:59 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:34556</guid><dc:creator>gstark</dc:creator><slash:comments>5</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/34556.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=34556</wfw:commentRss><description>&lt;p&gt;I recently had a need to load a bunch of&amp;nbsp;pdf files&amp;nbsp;into my database.&amp;nbsp; The problem was that the directory the files were in contained a bunch of other pdf files that I didn't want or that were no longer needed so I couldn't just upload every PDF in the directory.&amp;nbsp; I did have a database table that contained all the file names that were still valid.&amp;nbsp; I was wishing for a way to simply join from that table to the file system and load all those files.&amp;nbsp; I certainly could have just written a quick exe that did this by retrieving the list of file names from the database and then grabbing the file and uploading back into the database.&amp;nbsp; Instead I decided to write a CLR table value function that took in a directory path and a file search criteria and returned a table with the filename and the binary of the file.&amp;nbsp; This way I could simply do an insert into my table all from t-sql.&amp;nbsp; This ended up being a lot easier than what I thought and it worked quite well.&amp;nbsp; Below is the code for the CLR function.&amp;nbsp; Simply compile this code and then load it into your database.&amp;nbsp; This will create a function called FileReader.&amp;nbsp;&amp;nbsp; You simply pass in a directory path and a search criteria (i.e. *.pdf).&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:d6033f09-4899-4bcc-b43c-52c8208ac6db" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Data;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Data.SqlClient;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Data.SqlTypes;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; Microsoft.SqlServer.Server;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.IO;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Collections;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;partial&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;class&lt;/span&gt;&lt;span style="color:#000000;"&gt; FileReader
{
  [SqlFunction(FillRowMethodName &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;FillRow&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, 
              TableDefinition &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;FileName nvarchar(200),FileContent varbinary(max)&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, 
              Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;FileReader&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;static&lt;/span&gt;&lt;span style="color:#000000;"&gt; IEnumerable InitMethod(String Directory, String FileCriteria)
  {

    DirectoryInfo d &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; DirectoryInfo(Directory);
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;return&lt;/span&gt;&lt;span style="color:#000000;"&gt; d.GetFiles(FileCriteria);
  }
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;static&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;void&lt;/span&gt;&lt;span style="color:#000000;"&gt; FillRow(Object obj, &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;out&lt;/span&gt;&lt;span style="color:#000000;"&gt; SqlString FileName, &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;out&lt;/span&gt;&lt;span style="color:#000000;"&gt; SqlBytes FileContent)
  {
    FileInfo fi &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; (FileInfo)obj;
    FileContent &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; SqlBytes(File.ReadAllBytes(fi.FullName));
    FileName &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; fi.Name; 
  }
}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here is an example of how to use the function.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:40f735ef-a255-459a-b8d7-c74201a2b754" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;*&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; dbo.FileReader(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;d:\&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;*.txt&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;and what the result was....&lt;/p&gt;
&lt;p&gt;FileName&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileContent&lt;br&gt;-------------------- ----------------------------------------------------&lt;br&gt;Test.txt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x6173646673646661736466...&lt;br&gt;Test2.txt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0x61736466736466617364660D0A0D0A6173626C61736661666C...
&lt;p&gt;&amp;nbsp;
&lt;p&gt;Here is some example t-sql to show how I used this to&amp;nbsp;insert the files into a table.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:68cd47ec-438b-4a6c-9240-ad942fc31310" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;Create&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;table&lt;/span&gt;&lt;span style="color:#000000;"&gt; _FilesToGrab (FileName &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;))
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Create&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;table&lt;/span&gt;&lt;span style="color:#000000;"&gt; _Files (FileName &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;"&gt;), FileContent &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varbinary&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;max&lt;/span&gt;&lt;span style="color:#000000;"&gt;))

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Insert&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;into&lt;/span&gt;&lt;span style="color:#000000;"&gt; _FilesToGrab &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;VALUES&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;test.txt&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;)

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Insert&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Into&lt;/span&gt;&lt;span style="color:#000000;"&gt; _Files (FileName, FileContent)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; f.FileName, fc.FileContent
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; _FilesToGrab f
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Cross&lt;/span&gt;&lt;span style="color:#000000;"&gt; Apply dbo.FileReader(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;d:\&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;, f.FileName) fc

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;*&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; _Files 

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Drop&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Table&lt;/span&gt;&lt;span style="color:#000000;"&gt; _FilesToGrab   
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Drop&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;Table&lt;/span&gt;&lt;span style="color:#000000;"&gt; _Files&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;So my final solution consisted of this function and then one insert into statement with a select.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Hopefully this function comes in handy for someone else.&amp;nbsp; If any has any suggestions on how to improve on it please let me know and I will see what I can do.&amp;nbsp; &lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;;subject=Retrieve+File+Contents+using+SQL+Server+2005+SQL+CLR" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;;title=Retrieve+File+Contents+using+SQL+Server+2005+SQL+CLR" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;title=Retrieve+File+Contents+using+SQL+Server+2005+SQL+CLR" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;;title=Retrieve+File+Contents+using+SQL+Server+2005+SQL+CLR" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx&amp;amp;;title=Retrieve+File+Contents+using+SQL+Server+2005+SQL+CLR&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=34556" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/6UDINTwZ8tM" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Table-Valued+Functions/default.aspx">Table-Valued Functions</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/SQL+CLR/default.aspx">SQL CLR</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/09/06/Retrieve-File-Contents-using-SQL-Server-2005-SQL-CLR.aspx</feedburner:origLink></item><item><title>Move TempDB Sql Server 2005</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/Na-pZaP16SI/Move-TempDB-Sql-Server-2005.aspx</link><pubDate>Mon, 20 Aug 2007 21:19:14 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:34013</guid><dc:creator>gstark</dc:creator><slash:comments>16</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/34013.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=34013</wfw:commentRss><description>&lt;p&gt;I recently needed to move the TempDB on my Sql Server so I looked in Books Online and my initial thought based on what it said was that there is no way that will work.&amp;nbsp; Basically it says to find where the files are, and then move them to the new location followed by an alter statement to point the database at the new location.&amp;nbsp; Well of course this didn't work because the tempdb files are in use.&amp;nbsp; After thinking about it I just decided to try to alter the master database and point it at where I wanted the tempdb files to be and then just restart since Sql Server creates the tempdb again when you restart it.&amp;nbsp; Sure enough it worked.&amp;nbsp; Here are the steps I took.&lt;/p&gt; &lt;p&gt;1.&amp;nbsp; Find out where the TempDB files are (not that you really need to know for anything since you can't move them without stopping SQL Server).&lt;/p&gt; &lt;p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:59573884-b21c-477a-95ee-e84162755431" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;SELECT&lt;/span&gt;&lt;span style="color:#000000;"&gt; name, physical_name
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;FROM&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.master_files
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;WHERE&lt;/span&gt;&lt;span style="color:#000000;"&gt; database_id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;DB_ID&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;tempdb&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;2. Alter the master database and point the tempdb to the new location.&lt;/p&gt;
&lt;p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:64be1b84-404a-44c6-80a0-559a1e474bbf" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;USE&lt;/span&gt;&lt;span style="color:#000000;"&gt; master;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;ALTER&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;DATABASE&lt;/span&gt;&lt;span style="color:#000000;"&gt; tempdb 
MODIFY &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;FILE&lt;/span&gt;&lt;span style="color:#000000;"&gt; (NAME &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; tempdev, FILENAME &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;D:\SqlServer\Data\tempdb.mdf&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;);
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;ALTER&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;DATABASE&lt;/span&gt;&lt;span style="color:#000000;"&gt;  tempdb 
MODIFY &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;FILE&lt;/span&gt;&lt;span style="color:#000000;"&gt; (NAME &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; templog, FILENAME &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;D:\SqlServer\Data\templog.ldf&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;);
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;GO&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;3. Restart SQL Server&lt;/p&gt;
&lt;p&gt;Upon restarting you will see new TempDB files created.&amp;nbsp; Alternatively I suppose you could do steps, 1 and 2 above and then stop SQL Server, move the TempDB files to the new location, and then start SQL Server.&amp;nbsp; I suppose that would be slightly better since then you wouldn't have to wait for the TempDB files to auto-grow which can be a performance hit.&amp;nbsp; Either way if you try to follow books online you won't have any luck.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;;subject=Move+TempDB+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;;title=Move+TempDB+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;title=Move+TempDB+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;;title=Move+TempDB+Sql+Server+2005" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx&amp;amp;;title=Move+TempDB+Sql+Server+2005&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=34013" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/Na-pZaP16SI" height="1" width="1"/&gt;</description><category domain="http://sqladvice.com/blogs/gstark/archive/tags/SQL/default.aspx">SQL</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Sql+Server/default.aspx">Sql Server</category><category domain="http://sqladvice.com/blogs/gstark/archive/tags/Database+Maintenance/default.aspx">Database Maintenance</category><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/08/20/Move-TempDB-Sql-Server-2005.aspx</feedburner:origLink></item><item><title>Recover Suspect SQL Server Database</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/HSicDz5iKyg/Recover-Suspect-SQL-Server-Database.aspx</link><pubDate>Tue, 07 Aug 2007 14:37:57 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:33627</guid><dc:creator>gstark</dc:creator><slash:comments>1</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/33627.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=33627</wfw:commentRss><description>&lt;p&gt;Where I work we have about 160 instances of SQL Server Express running on laptops and as you can imagine these database instances tend to become corrupted from time to time.&amp;nbsp; One of the most frequent issues is that a database becomes suspect.&amp;nbsp; Obviously your first choice should be to restore a backup and the transaction logs since the last backup.&amp;nbsp; However if you don't have this (as I never do on my SQL Server Express instances) this is usually pretty simple to take care of by putting the database into single user mode and then emergency mode and then running a dbcc checkdb.&amp;nbsp; Here is the T-SQL you should use.&amp;nbsp; NOTE: You should be in the master database when you run this.&lt;/p&gt; &lt;p&gt;1) Alter database mydb set Single_User&lt;/p&gt; &lt;p&gt;2) Alter database mydb set&amp;nbsp;Emergency&lt;/p&gt; &lt;p&gt;3) DBCC CheckDB ('mydb') -- This will tell you the Repair level to use&lt;/p&gt; &lt;p&gt;4) DBCC CheckDB ('mydb', { REPAIR_ALLOW_DATA_LOSS | REPAIR_FAST | REPAIR_REBUILD&amp;nbsp;})&lt;/p&gt; &lt;p&gt;5) Alter database mydb set Multi_User&lt;/p&gt; &lt;p&gt;After a successful DBCC CheckDB the database is back in a consistent state and it's status is now online.&amp;nbsp; For more information on DBCC CheckDB go &lt;a href="http://msdn2.microsoft.com/en-us/library/ms176064.aspx" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I normally run the REPAIR_ALLOW_DATA_LOSS as the users running the express instance generally don't have much critical data so if we lose some data it isn't that much of an issue.&amp;nbsp; NOTE: Running DBCC CheckDB can take a long time to run and you may want to consider running it with the "noindex" option.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Let me know if you have any other strategies for recovering databases in suspect mode.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;;subject=Recover+Suspect+SQL+Server+Database" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;;title=Recover+Suspect+SQL+Server+Database" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;title=Recover+Suspect+SQL+Server+Database" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;;title=Recover+Suspect+SQL+Server+Database" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx&amp;amp;;title=Recover+Suspect+SQL+Server+Database&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=33627" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/HSicDz5iKyg" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/08/07/Recover-Suspect-SQL-Server-Database.aspx</feedburner:origLink></item><item><title>SQL Server Management Studio Query Shortcuts</title><link>http://feedproxy.google.com/~r/GreggStarkOnSqlServer/~3/wChbwoRq0iE/SQL-Server-Management-Studio-Query-Shortcuts.aspx</link><pubDate>Fri, 03 Aug 2007 18:32:58 GMT</pubDate><guid isPermaLink="false">81c49694-04ec-4285-ae1c-61808dc1a845:33546</guid><dc:creator>gstark</dc:creator><slash:comments>16</slash:comments><comments>http://sqladvice.com/blogs/gstark/comments/33546.aspx</comments><wfw:commentRss>http://sqladvice.com/blogs/gstark/commentrss.aspx?PostID=33546</wfw:commentRss><description>&lt;p&gt;I have always hated typing and using the mouse so I always try to find shortcuts and hotkeys for every development environment I am in.&amp;nbsp; Having said that I thought that I would share what I have custom setup for SQL Server Management Studio.&amp;nbsp; Until I started playing around with them I really didn't realize what all was possible.&amp;nbsp; Basically you just highlight some text in query analyzer and then hit the hotkey and it passes the highlighted text into whatever the code is behdind the hotkey.&amp;nbsp; So here is what I use currently&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;ALT+ F1 = sp_help&lt;/strong&gt;&lt;/font&gt; - This is useful to highlight a&amp;nbsp; table or proc and then it will return all the input parameters or columns on the table&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;CTRL+ F1 = sp_helptext&lt;/font&gt;&lt;/strong&gt; - This will give the compiled version of a proc or function and is much easier than finding it in object explorer.&amp;nbsp; I usually do a ctrl - t before running this to put the results in text mode.&lt;/p&gt; &lt;p&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;CTRL&lt;/font&gt;&lt;/strong&gt;+ 1 = sp_who2&lt;/strong&gt;&lt;/font&gt; - This returns all spids currently active&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;CTRL&lt;/font&gt;&lt;/strong&gt;+ 2 = sp_block_info&lt;/font&gt;&lt;/strong&gt; - This will show all blocks on the database and is helpful if you are currently experiencing blocking as it shows the statement being blocked and the blocking statement.&amp;nbsp; This is a custom proc taken from the &lt;a href="http://blogs.msdn.com/sqlcat/default.aspx" target="_blank"&gt;Microsoft SQL Server Development Customer Advisory Team Blog&lt;/a&gt;.&amp;nbsp; Here is the code for it.&amp;nbsp; NOTE: this only works on databases running SQL Server 2005 as it uses Dynamic Management Views.&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:8487e593-2c90-4dfd-badf-e8b71ca6c12e" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;CREATE&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;proc&lt;/span&gt;&lt;span style="color:#000000;"&gt; sp_block_info
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;getdate&lt;/span&gt;&lt;span style="color:#000000;"&gt;() &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; BlockDate,
      &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;db_name&lt;/span&gt;&lt;span style="color:#000000;"&gt;(resource_database_id) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;database&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;,
      t1.resource_associated_entity_id &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;blk object&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;,
      t1.resource_type &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;lock type&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;,
      t1.request_mode &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;lock req&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;,   &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt;- lock requested&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;      t1.request_session_id &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;waiter sid&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt;- spid of waiter&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;      t2.wait_duration_ms &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;wait time&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;,         
      (&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.dm_exec_requests &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; r  &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt;- get sql for waiter&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;cross&lt;/span&gt;&lt;span style="color:#000000;"&gt; apply sys.dm_exec_sql_text(r.sql_handle) 
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; r.session_id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; t1.request_session_id) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; waiter_batch,
      (&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;substring&lt;/span&gt;&lt;span style="color:#000000;"&gt;(qt.&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt;,r.statement_start_offset&lt;/span&gt;&lt;span style="color:#808080;"&gt;/&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;2&lt;/span&gt;&lt;span style="color:#000000;"&gt;, 
        (&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;case&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;when&lt;/span&gt;&lt;span style="color:#000000;"&gt; r.statement_end_offset &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;-&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;then&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;len&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;convert&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;nvarchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF00FF;"&gt;max&lt;/span&gt;&lt;span style="color:#000000;"&gt;), qt.&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt;)) &lt;/span&gt;&lt;span style="color:#808080;"&gt;*&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;2&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;else&lt;/span&gt;&lt;span style="color:#000000;"&gt; r.statement_end_offset &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;end&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;-&lt;/span&gt;&lt;span style="color:#000000;"&gt; r.statement_start_offset)&lt;/span&gt;&lt;span style="color:#808080;"&gt;/&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;2&lt;/span&gt;&lt;span style="color:#000000;"&gt;) 
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.dm_exec_requests &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; r
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;cross&lt;/span&gt;&lt;span style="color:#000000;"&gt; apply sys.dm_exec_sql_text(r.sql_handle) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; qt
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; r.session_id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; t1.request_session_id) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; waiter_stmt,    &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt;- statement blocked&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;             t2.blocking_session_id &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;blocker sid&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; spid of blocker &lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;        (&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; sys.sysprocesses &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; p &lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt;- get sql for blocker&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;cross&lt;/span&gt;&lt;span style="color:#000000;"&gt; apply sys.dm_exec_sql_text(p.sql_handle) 
          &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; p.spid &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; t2.blocking_session_id) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; blocker_stmt
      &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
      sys.dm_tran_locks &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; t1, 
      sys.dm_os_waiting_tasks &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; t2
      &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt; 
      t1.lock_owner_address &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; t2.resource_address&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;CTRL&lt;/font&gt;&lt;/strong&gt;+ 3 = sp_findtext&lt;/font&gt;&lt;/strong&gt; - This is a custom proc I have that searches all procs, functions, views for whatever you have highlighted.&amp;nbsp; This is great for finding all the places a column is used or a table is referenced.&amp;nbsp; Here is the code for it.&amp;nbsp; Let me know if you have anything different that works better.&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:41642d56-9cab-46b3-849d-5dbba71e4412" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;CREATE&lt;/span&gt;&lt;span style="color:#000000;"&gt;  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;procedure&lt;/span&gt;&lt;span style="color:#000000;"&gt; sp_FindText
&lt;/span&gt;&lt;span style="color:#008000;"&gt;@in_text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;varchar&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;font-weight:bold;"&gt;8000&lt;/span&gt;&lt;span style="color:#000000;"&gt;)
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#008080;"&gt;--&lt;/span&gt;&lt;span style="color:#008080;"&gt; exec sqldev..sp_findtext 'customer'&lt;/span&gt;&lt;span style="color:#008080;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@in_text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;%&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@in_text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;%&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Database&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Name&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Type&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt; (
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt;       &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;mydb&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Database&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, o.Name, o.Type
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt;        mydb..syscomments c (nolock)
    &lt;/span&gt;&lt;span style="color:#808080;"&gt;join&lt;/span&gt;&lt;span style="color:#000000;"&gt;         mydb..sysobjects o  (nolock) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;on&lt;/span&gt;&lt;span style="color:#000000;"&gt; o.id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; c.id
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt;     c.&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;like&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@in_text&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;union&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;select&lt;/span&gt;&lt;span style="color:#000000;"&gt;       &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;mydb2&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;as&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Database&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, o.Name, o.Type
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;from&lt;/span&gt;&lt;span style="color:#000000;"&gt;        mydb2..syscomments c (nolock)
    &lt;/span&gt;&lt;span style="color:#808080;"&gt;join&lt;/span&gt;&lt;span style="color:#000000;"&gt;         mydb2..sysobjects o  (nolock) &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;on&lt;/span&gt;&lt;span style="color:#000000;"&gt; o.id &lt;/span&gt;&lt;span style="color:#808080;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; c.id
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;where&lt;/span&gt;&lt;span style="color:#000000;"&gt;     c.&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;text&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;like&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#008000;"&gt;@in_text&lt;/span&gt;&lt;span style="color:#000000;"&gt;
) x

&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;order&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;by&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;[&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;Database&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;, name, Type&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;ctrl + 4 = select top 100 * from&lt;/strong&gt;&lt;/font&gt; - This is one of my favorites....no more typing select * from mytable to see what the data looks like for a given table.&amp;nbsp; Simply highlight the tablename in the query window and hit ctrl + 4 and you will get the first 100 rows.&amp;nbsp; Handy to say the least!!&lt;/p&gt;
&lt;p&gt;The rest of the ones I have setup do a select from specific tables.&amp;nbsp; For example say you have a customer table and you always need to lookup a customer by customer number when doing ad hoc queries in query analyzer.&amp;nbsp; You can setup a hotkey for something like this "select * from Customer where CustomerNumber = ".&amp;nbsp; Then simply type a customer number in query analyzer (say 123456), highlight it and hit the hotkey for it.&amp;nbsp; I have 4 or 5 hotkeys setup like this and it really saves a lot of typing and increases productivity quite a bit.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Also here is a link to all of the editor hotkeys for SQL Server Management Studio.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;a title="http://msdn2.microsoft.com/en-us/library/ms174205.aspx" href="http://msdn2.microsoft.com/en-us/library/ms174205.aspx"&gt;http://msdn2.microsoft.com/en-us/library/ms174205.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Lastly, if anyone has any other hotkeys setup that are different than what I have, please post a comment.&amp;nbsp; &lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;;subject=SQL+Server+Management+Studio+Query+Shortcuts" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;;title=SQL+Server+Management+Studio+Query+Shortcuts" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;title=SQL+Server+Management+Studio+Query+Shortcuts" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;;title=SQL+Server+Management+Studio+Query+Shortcuts" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx&amp;amp;;title=SQL+Server+Management+Studio+Query+Shortcuts&amp;amp;;top=1" target="_blank" title = "Post http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://sqladvice.com/aggbug.aspx?PostID=33546" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/GreggStarkOnSqlServer/~4/wChbwoRq0iE" height="1" width="1"/&gt;</description><feedburner:origLink>http://sqladvice.com/blogs/gstark/archive/2007/08/03/SQL-Server-Management-Studio-Query-Shortcuts.aspx</feedburner:origLink></item></channel></rss>
