<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlblog.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" 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/"><channel><title>Search results matching tags 'SQL Server', 'database developers', 'SQL Server 2008', and 'utilities'</title><link>http://sqlblog.com/search/SearchResults.aspx?o=DateDescending&amp;tag=SQL+Server,database+developers,SQL+Server+2008,utilities&amp;orTags=0</link><description>Search results matching tags 'SQL Server', 'database developers', 'SQL Server 2008', and 'utilities'</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>xp_delete_file</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2009/03/11/xp-delete-file.aspx</link><pubDate>Wed, 11 Mar 2009 22:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:12573</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I built a SQL Server 2008 Maintenance Plan and included a Maintenance Cleanup Task. For those who don't work with this stuff every day, Maintenance Plans are actually SSIS packages. The short version of a long story is: I couldn't execute the Maintenance Plan on the server. I won't go into that (not now, at least); but I noticed a View T-SQL button on the task:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://vsteamsystemcentral.com/images/ext/MaintenanceCleanupTask2008.jpg"&gt;&lt;/P&gt;
&lt;P&gt;When I clicked the button, I was presented with a&amp;nbsp;textbox containing the following&amp;nbsp;T-SQL:&lt;/P&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;EXECUTE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; master&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;dbo&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;xp_delete_file 0&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;N&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'E:\Database_Backups'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;N&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'bak'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'2009-03-07T16:45:17'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;1&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;STRONG&gt;I Don't Know Either&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I said to myself: "Self, this could be a very useful extended stored procedure." So I popped open Books Online to look it up and... no topic found. Not a problem.&lt;/P&gt;
&lt;P&gt;I popped over to MSDN and started scrolling through the online documentation and... no topic found. Not a problem.&lt;/P&gt;
&lt;P&gt;I searched MSDN and... topics found. Yay! I clicked on a link to Connect about the topic missing from the documentation and... the link was broken. &amp;lt;/HowIronic&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What I Do Know&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I actually needed to clean up older backups, but I thought I could use this to also clean out old Team Foundation Server WSS (Windows SharePoint Server) logs that were filling up one of my drives. It turns out I could.&lt;/P&gt;
&lt;P&gt;I edited and tested the following code:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;declare&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDate &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;nvarchar&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;50&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;declare&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDateTime &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;datetime&lt;BR&gt;set&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDateTime &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;=&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff00ff&gt;&lt;FONT color=#ff00ff&gt;DateAdd&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;hh&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;-&lt;/FONT&gt;&lt;/FONT&gt;24&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff00ff&gt;&lt;FONT color=#ff00ff&gt;GetDate&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;())&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;set&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDate &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;=&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;Select&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff00ff&gt;&lt;FONT color=#ff00ff&gt;Replace&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff00ff&gt;&lt;FONT color=#ff00ff&gt;Convert&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;nvarchar&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDateTime&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; 111&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;),&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'/'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'-'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;)&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;+&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'T'&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;+&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#ff00ff&gt;&lt;FONT color=#ff00ff&gt;Convert&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;nvarchar&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; @DeleteDateTime&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt; 108&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;))&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;EXECUTE&lt;/FONT&gt;&lt;/FONT&gt; master&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;.&lt;/FONT&gt;&lt;/FONT&gt;dbo&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;.&lt;/FONT&gt;&lt;/FONT&gt;xp_delete_file 0&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;N&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'E:\WSSLogs'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;N&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;'log'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;@DeleteDate&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;,&lt;/FONT&gt;&lt;/FONT&gt;1&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;It works. What's more, it runs at the same time as my nightly backup jobs (as a step in the same SQL Agent Job) and leaves my server fresh and clean for another day of pleasant computing.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Conclusion&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I still do not know what the numeric arguments accomplish in the &lt;FONT face="Courier New"&gt;xp_delete_file&lt;/FONT&gt; extended stored procedure. But I was able to get some use from it nonetheless.&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;</description></item></channel></rss>