<?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', 'ssms', and 'No Pony'</title><link>http://sqlblog.com/search/SearchResults.aspx?o=DateDescending&amp;tag=SQL+Server,ssms,No+Pony&amp;orTags=0</link><description>Search results matching tags 'SQL Server', 'ssms', and 'No Pony'</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>T-SQL Snack: Why Does SSMS Generate Create Scripts With EXEC dbo.sp_executesql?</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/07/19/why-does-ssms-generate-create-scripts-with-exec-dbo-sp-executesql.aspx</link><pubDate>Mon, 19 Jul 2010 11:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:27101</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I've been meaning to blog about this for a while and a question from a team member prompted this post (thanks Allan!)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;SSMS Scripting Options&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In SSMS you can script a stored procedure - right-click a stored procedure, hover over Script Stored Procedure As, hover over Create To, and select New Query Editor Window:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:655px;HEIGHT:245px;" src="http://vsteamsystemcentral.com/images/ext/sp_exec_scripting_0.jpg" width=655 height=245&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sometimes the script is generated as shown: &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:1233px;HEIGHT:799px;" src="http://vsteamsystemcentral.com/images/ext/sp_exec_scripting_1.jpg" width=1233 height=799&gt;&lt;/P&gt;
&lt;P&gt;The reason? Your scripting options (Tools--&amp;gt;Options--&amp;gt;Scripting in SSMS 2005 [shown below], Tools--&amp;gt;Options--&amp;gt;Sql Server Object Explorer--&amp;gt;Scripting in SSMS 2008 R2) are set to generate IF NOT EXISTS clauses:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:745px;HEIGHT:433px;" src="http://vsteamsystemcentral.com/images/ext/sp_exec_scripting_2.jpg" width=745 height=433&gt;&lt;/P&gt;
&lt;P&gt;Set this to False to generate stored procedure T-SQL that appears as shown here:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:1233px;HEIGHT:799px;" src="http://vsteamsystemcentral.com/images/ext/sp_exec_scripting_3.jpg" width=1233 height=799&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What I'd Like&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I would like the If Not Exists statement and the T-SQL without the call to sp_execute. Something like:&lt;/P&gt;
&lt;P&gt;IF NOT EXISTS (SELECT&amp;nbsp;s.name + '.' + p.name&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FROM sys.procedures&amp;nbsp;p&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INNER JOIN sys.schemas s ON s.schema_id = p.schema_id&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE&amp;nbsp;s.name = 'dbo'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AND p.name = 'uspGetBillOfMaterials')&lt;BR&gt;BEGIN&lt;BR&gt;CREATE PROCEDURE [dbo].[uspGetBillOfMaterials]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @StartProductID [int],&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @CheckDate [datetime]&lt;BR&gt;AS&lt;BR&gt;BEGIN...&lt;/P&gt;
&lt;P&gt;In a recent email exchange with the SSIS Developer Team at Microsoft, I shared a bunch of things I would like in SSIS. Since I was asking for so much I included a request for a pony. Matt Masson (&lt;A href="http://blogs.msdn.com/b/mattm/" target=_blank&gt;Blog&lt;/A&gt; - &lt;A href="http://twitter.com/mattmasson" target=_blank&gt;Twitter&lt;/A&gt;) sent me this image in reply:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:385px;HEIGHT:255px;" src="http://vsteamsystemcentral.com/images/ext/NoPonyForYou.jpg" width=385 height=255&gt;&lt;/P&gt;
&lt;P&gt;The clincher in this image is the inset of a horse with the caption "NOT YOURS". I still laugh out loud whenever I look at this!&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item></channel></rss>