<?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:atom="http://www.w3.org/2005/Atom" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Recent Entries Feed | SQLServerPedia Blog</title><link>http://pulse.sqlserverpedia.com/blog/</link><description>A variety of blog posts about SQL Server.</description><language>en-us</language><lastBuildDate>Wed, 22 May 2013 06:54:17 -0500</lastBuildDate><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/sqlserverpedia" /><feedburner:info uri="sqlserverpedia" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-nc-nd/3.0/</creativeCommons:license><feedburner:emailServiceId>sqlserverpedia</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><title>Using CROSS APPLY instead of a calculated variable</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/YRfe8k0paSA/</link><description>&lt;p&gt;Earlier this week I posted &lt;a href="http://sqlstudies.com/2013/05/20/the-many-uses-of-cross-apply/"&gt;The many uses of CROSS APPLY&lt;/a&gt; and I&amp;#x2019;m quite glad I did.  I&amp;#x2019;ve been working on a series of audit queries for the last couple of weeks and got thrown a bit of a curve today.  The original specs included several comparisons against a date.  Basically the following.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;WHERE (date1 &amp;gt;= '5/31/2008' AND date2 &amp;gt;= '5/31/2008')
	OR (date3 &amp;gt;= '5/31/2008' AND date4 &amp;gt;= '5/31/2008')&lt;/pre&gt;
&lt;p&gt;I was a little shocked when I was told several weeks into the project &amp;#x201C;Next month it will change to June 30 2008.&amp;#x201D;  So in reality rather than a constant (used no less than 7 times throughout each of 13 views) I now needed a calculation.&lt;/p&gt;
&lt;p&gt;Not really a huge issue.  It&amp;#x2019;s a simple enough calculation and it would be simple enough to just copy and paste it everywhere it&amp;#x2019;s needed.  I just really don&amp;#x2019;t want the repetitive code.  Not to mention adding that much more complexity to the views.  And I shudder to think of having to change it in over 90 different places if the business specs change.  So the next thought I had was using a variable, unfortunately these have to be views, although I guess I could have used TVFs (table valued functions) but still not the best solution.  &lt;/p&gt;
&lt;p&gt;Now recently I watched Kendra Little&amp;#x2019;s &lt;a href="http://www.brentozar.com/archive/2013/04/5-tsql-features-youre-missing-out-on-video/"&gt;5 T-SQL Features You&amp;#x2019;re Missing Out On&lt;/a&gt; and learned that you could use CROSS APPLY for reusable calculations.  Well that&amp;#x2019;s what this is right?  A reusable calculation.  &lt;/p&gt;
&lt;p&gt;So now instead of looking like this:  (The calculation is from one of &lt;a href="http://blog.sqlauthority.com/2007/08/18/sql-server-find-last-day-of-any-month-current-previous-next/"&gt;Pinal Dave&amp;#x2019;s blogs&lt;/a&gt;, and the calculation is for September 2003.  If you are reading this past May 2013 that will have changed.)&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT *
FROM Sales.SalesOrderHeader
WHERE (DueDate &amp;gt;= DATEADD(mm, DATEDIFF(mm,0,GETDATE())-116,0) 
			AND DueDate &amp;lt; DATEADD(mm, DATEDIFF(mm,0,GETDATE())-115,0))
   OR (ShipDate &amp;gt;= DATEADD(mm, DATEDIFF(mm,0,GETDATE())-116,0) 
			AND ShipDate &amp;lt; DATEADD(mm, DATEDIFF(mm,0,GETDATE())-115,0))&lt;/pre&gt;
&lt;p&gt;It now instead looks like this.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT *
FROM Sales.SalesOrderHeader
CROSS APPLY (SELECT DATEADD(mm, DATEDIFF(mm,0,GETDATE())-116,0) AS StartDate, 
			DATEADD(mm, DATEDIFF(mm,0,GETDATE())-115,0) AS EndDate) AS Vars
WHERE (DueDate &amp;gt;= Vars.StartDate AND DueDate &amp;lt; Vars.EndDate)
   OR (ShipDate &amp;gt;= Vars.StartDate AND ShipDate &amp;lt; Vars.EndDate&lt;/pre&gt;
&lt;p&gt;Personally I find this much easier to read.  Of course if the performance isn&amp;#x2019;t there then it doesn&amp;#x2019;t really matter.  Fortunately or unfortunately depending on how you look at it, all of my tests so far have been inconclusive.  The query plans are very slightly different on some queries and the same on others.  The run times are only slightly different and neither one runs faster every time.  Until I see something conclusive one way or the other I&amp;#x2019;ll consider performance close enough with a big edge on readability and maintainability going to the CROSS APPLY.&lt;/p&gt;
&lt;br&gt;Filed under: &lt;a href="http://sqlstudies.com/category/microsoft-sql-server/"&gt;Microsoft SQL Server&lt;/a&gt;, &lt;a href="http://sqlstudies.com/category/sqlserverpedia-syndication/"&gt;SQLServerPedia Syndication&lt;/a&gt;, &lt;a href="http://sqlstudies.com/category/microsoft-sql-server/t-sql/"&gt;T-SQL&lt;/a&gt; Tagged: &lt;a href="http://sqlstudies.com/tag/code-language/"&gt;code language&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/cross-apply/"&gt;CROSS APPLY&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/language-sql/"&gt;language sql&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/microsoft-sql-server-2/"&gt;microsoft sql server&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/sql-statements/"&gt;sql statements&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/t-sql/"&gt;T-SQL&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gocomments/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/godelicious/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gofacebook/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gotwitter/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gostumble/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/godigg/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/goreddit/sqlstudiesdotcom.wordpress.com/572/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlstudiesdotcom.wordpress.com/572/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=sqlstudies.com&amp;amp;blog=39382117&amp;amp;post=572&amp;amp;subd=sqlstudiesdotcom&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/YRfe8k0paSA" height="1" width="1"/&gt;</description><pubDate>Wed, 22 May 2013 06:54:17 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/using-cross-apply-instead-of-a-calculated-variable/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/using-cross-apply-instead-of-a-calculated-variable/</feedburner:origLink></item><item><title>Cumulative Update – 11 for SQL Server 2008 SP3 Is Now Available !</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/HM6hT7pwFGY/</link><description>&lt;p&gt;The 11th cumulative update release for SQL Server 2008 Service Pack 3 is now available. Cumulative Update 11 contains all the hotfixes released since the initial release of SQL Server 2008 SP3.&lt;/p&gt;
&lt;p&gt;Those who are facing severe issues with their environment, they can plan to test CU11 in test environment &amp;amp; then move to Production after satisfactory results.&lt;/p&gt;
&lt;p&gt;To other, I suggest to wait for SP4 final release to deploy on your production environment, to have consolidate build.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;KB Article For CU11 of SQL Server 2008 SP3&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#11 KB Article: &lt;a href="http://support.microsoft.com/kb/2834048"&gt;http://support.microsoft.com/kb/2834048&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Previous Cumulative Update KB Articles of SQL Server 2008 SP3:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#10 KB Article: &lt;a href="http://support.microsoft.com/kb/2814783"&gt;http://support.microsoft.com/kb/2814783&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#9 KB Article: &lt;a href="http://support.microsoft.com/kb/2799883"&gt;http://support.microsoft.com/kb/2799883&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#8 KB Article: &lt;a href="http://support.microsoft.com/kb/2771833"&gt;http://support.microsoft.com/kb/2771833&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#7 KB Article: &lt;a href="http://support.microsoft.com/kb/2738350"&gt;http://support.microsoft.com/kb/2738350&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#6 KB Article: &lt;a href="http://support.microsoft.com/kb/2715953"&gt;http://support.microsoft.com/kb/2715953&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#5 KB Article: &lt;a href="http://support.microsoft.com/kb/2696626"&gt;http://support.microsoft.com/kb/2696626&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#4 KB Article: &lt;a href="http://support.microsoft.com/kb/2673383"&gt;http://support.microsoft.com/kb/2673383&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#3 KB Article: &lt;a href="http://support.microsoft.com/kb/2648098"&gt;http://support.microsoft.com/kb/2648098&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#2 KB Article: &lt;a href="http://support.microsoft.com/kb/2633143"&gt;http://support.microsoft.com/kb/2633143&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA7; CU#1 KB Article: &lt;a href="http://support.microsoft.com/kb/2617146"&gt;http://support.microsoft.com/kb/2617146&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you liked this post, do like on Facebook at &lt;strong&gt;&lt;a href="http://www.facebook.com/mssqlfun"&gt;http://www.facebook.com/mssqlfun&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Reference : &lt;strong&gt;Rohit Garg (&lt;a href="http://mssqlfun.com/"&gt;http://mssqlfun.com/&lt;/a&gt;)&lt;/strong&gt;&lt;/p&gt;
&lt;br&gt;&lt;a href="http://feeds.wordpress.com/1.0/gocomments/mssqlfun.wordpress.com/525/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mssqlfun.wordpress.com/525/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=mssqlfun.com&amp;amp;blog=37099261&amp;amp;post=525&amp;amp;subd=mssqlfun&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?i=_8pPUq1IkUY:OffoeDpSuOA:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:7Q72WNTAKBA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=7Q72WNTAKBA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?i=_8pPUq1IkUY:OffoeDpSuOA:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:gIN9vFwOqvQ"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?i=_8pPUq1IkUY:OffoeDpSuOA:gIN9vFwOqvQ"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:TzevzKxY174"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=TzevzKxY174"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:l6gmwiTKsz0"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=l6gmwiTKsz0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/mssqlfun?a=_8pPUq1IkUY:OffoeDpSuOA:dnMXMwOfBR0"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/mssqlfun?d=dnMXMwOfBR0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/HM6hT7pwFGY" height="1" width="1"/&gt;</description><pubDate>Wed, 22 May 2013 05:29:33 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/cumulative-update-11-for-sql-server-2008-sp3-is-now-available/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/cumulative-update-11-for-sql-server-2008-sp3-is-now-available/</feedburner:origLink></item><item><title>MongoDB 2.4 Feature Demo and Q&amp;A on Geo Capabilities</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/GAgDRf2nEE0/</link><description>&lt;p&gt;&amp;#xA0;&lt;/p&gt; &lt;p&gt;Watch &lt;a href="http://www.10gen.com/presentations/webinar-mongodb-24-feature-demo-and-qa-geo-capabilities?mkt_tok=3RkMMJWWfF9wsRovs67MZKXonjHpfsX%2F6uQrWKezlMI%2F0ER3fOvrPUfGjI4JScFhI%2BSLDwEYGJlv6SgFSrHCMahnybgIUhI%3D" target="_blank"&gt;Webinar&lt;/a&gt; on Geo Capabilities of MongoDB&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;http://dbfriend.blogspot.com/feeds/posts/default?alt=rss&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/GAgDRf2nEE0" height="1" width="1"/&gt;</description><pubDate>Wed, 22 May 2013 05:20:56 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/mongodb-24-feature-demo-and-qa-on-geo-capabilities/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/mongodb-24-feature-demo-and-qa-on-geo-capabilities/</feedburner:origLink></item><item><title>Connecting a service between Publishing and Consuming SharePoint 2010 farm</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/nWQy2szHlY0/</link><description>&lt;p&gt;&lt;strong&gt;Hello Friends,&lt;/strong&gt;&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;br&gt;&lt;strong&gt;As discussed in my previous blog the new architecture of Service Application in 2010. Let&amp;#x2019;s today discuss about connecting two different farms:&lt;/strong&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Connecting a service between Publishing and Consuming SharePoint farm&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;There are some service applications which have the capability to Publish and which can be used by different SharePoint farms. What that actually means:&lt;/p&gt;
&lt;p&gt;We all know Search and crawl is the most intensive task in SharePoint. If a company has 2-3 SharePoint farms and every farms runs its own search/index application. It will be very intensive and time consuming task. Instead of running index in every SharePoint Farm:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;b&gt;We can just do the index in one farm and use that publishing service in different farm. It will save lot of resources and will be very less intensive task.&lt;/b&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;So what to do next:&lt;/p&gt;
&lt;p&gt;As we have other farm where some services are hosted locally as that cannot be published or consumed. So they reside in the same farm and we can consume the search application from the other farm. Below are the steps how to consume the publishing service from other farm:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;#xA0;&lt;b&gt;Note: To publish or consume the service applications, two farms should be in a far trust.&lt;/b&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Once the farm-trust is configured, below are the steps:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Publishing a Service Application&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;a) Go to a publishing server whose service you want to publish and be used in other farms, open Central Administration.&lt;/p&gt;
&lt;p&gt;b) Go to Application Management and then move to &amp;#xE8; Manage service applications.&lt;/p&gt;
&lt;p&gt;c) Click to the right of the service application which you want to publish, clicking on application will open it features be sure to click on its right.&lt;/p&gt;
&lt;p&gt;d) On the SharePoint Ribbon, click on Publish. Feature.&lt;/p&gt;
&lt;p&gt;e) On the next page check the option &amp;#x201C;Publish this Service Application to other farms&amp;#x201D; .&lt;/p&gt;
&lt;p&gt;f) Now we have to copy the whole url: It will begin with urn: and ends with .svc.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;ex: urn:schemas-microsoft-com:sharepoint:service:ac51d6g73agg&lt;br&gt;
96z8a6d89dg45fk972c243dbec93f0c7#authority=urn:uuid:da764&lt;br&gt;
dko856wgbvfk86542564757&amp;amp;authority=https://xyz:2500/Topolo&lt;br&gt;
gy/topology.svc&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;g) Make it ok and proceed.&lt;/p&gt;
&lt;p&gt;h) Again do the same step as step C.&lt;/p&gt;
&lt;p&gt;i) On the SharePoint Ribbon, click on Publish. Feature.&lt;/p&gt;
&lt;p&gt;j) Provide farm Id of the consuming farm, you can find as:&amp;#xA0;&amp;#xA0; Get-SPFarm | Select Id&lt;/p&gt;
&lt;p&gt;k) Add the same.&lt;/p&gt;
&lt;p&gt;l) Click the farm id you entered, for the permission.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Now the part of publishing farm is over, we have to enter the url in the consuming farm to use the service:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;a) Go to a Consuming server where publishing service needs to be used, open Central Administration.&lt;/p&gt;
&lt;p&gt;b) Go to Application Management and then move to manage service applications.&lt;/p&gt;
&lt;p&gt;c) On the SharePoint Ribbon, click on Connect.&lt;/p&gt;
&lt;p&gt;d) Pass the URL for the service application you have taken in step (f) of publishing server and press OK.&lt;/p&gt;
&lt;p&gt;e) Highlight the service application by clicking on it.&lt;/p&gt;
&lt;p&gt;f) Here you have an option to can choose, whether or not to include this service application in the default service application group. Click OK once done.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://ashishbanga.files.wordpress.com/2013/04/image1.jpg"&gt;&lt;img alt="" class=" wp-image-437 alignnone" height="81" src="http://ashishbanga.files.wordpress.com/2013/04/image1.jpg?w=650&amp;amp;h=81" width="650"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Now when all the stuff is over you can use the service application of a farm just as a locally hosted service application of your farm.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Hope I was able to describe the content correctly based on my knowledge and learning.&lt;/p&gt;
&lt;p&gt;If you liked this post, do like on Facebook at: http:&lt;b&gt;//www.facebook.com/Ashishsharepointblog&lt;/b&gt;&lt;br&gt;&lt;strong&gt;Feel free to Rate and provide feedback if you find post useful&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.facebook.com/mssqlfun"&gt;Hope this help&lt;br&gt;
Ashi&lt;/a&gt;&lt;/p&gt;
&lt;br&gt;Filed under: &lt;a href="http://ashishbanga.wordpress.com/category/sharepoint2010/"&gt;SharePoint2010&lt;/a&gt;, &lt;a href="http://ashishbanga.wordpress.com/category/sqlserverpedia/"&gt;SQLServerPedia&lt;/a&gt;  &lt;a href="http://feeds.wordpress.com/1.0/gocomments/ashishbanga.wordpress.com/441/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ashishbanga.wordpress.com/441/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ashishbanga.wordpress.com&amp;amp;blog=34412445&amp;amp;post=441&amp;amp;subd=ashishbanga&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;img height="1" src="http://feeds.feedburner.com/~r/AshishbangaSqlserverpedia/~4/OpAkLjlCgY8" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/nWQy2szHlY0" height="1" width="1"/&gt;</description><pubDate>Wed, 22 May 2013 03:11:23 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/connecting-a-service-between-publishing-and-consuming-sharepoint-2010-farm/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/connecting-a-service-between-publishing-and-consuming-sharepoint-2010-farm/</feedburner:origLink></item><item><title>Resolving Error Connecting Report Builder to a PowerPivot Data Source</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/gfmry7QvSuU/</link><description>&lt;p&gt;Recently I saw the following error while working with Report Builder in SharePoint 2013:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;#x201C;An error occurred while connecting to the data source.&amp;#xA0; Only the text-based query designer will be available.&amp;#xA0; The selected data extension DAX is not installed or cannot be loaded.&amp;#xA0; Verify that the selected data extension is installed on the client for local reports and on the report server for published reports.&amp;#x201D;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741218" rel="lightbox"&gt;&lt;img alt="image" border="0" height="191" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741219" title="image" width="635"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Huh?&amp;#xA0; I had tested the connection when I set it up, and knew it worked.&amp;#xA0; But no dice when using it for Report Builder.&amp;#xA0; Interestingly, my report executed but had empty results.&lt;/p&gt;
&lt;p&gt;It turns out I had a connection with the wrong data source type.&amp;#xA0; Below is info re: setting up a connection in SharePoint for use with Report Builder.&lt;/p&gt;
&lt;h2&gt;Creating a Data Source for Report Builder Reports in SharePoint 2013&lt;/h2&gt;
&lt;p&gt;The first thing we need is a Report Data Source (RSDS) created so we can point to it (as a shared data source) when we create the report in Report Builder.&amp;#xA0;&lt;/p&gt;
&lt;p&gt;The data connection can reside in a Data Connections library (if you prefer to centralize), or within the same library as the reports are stored (if you prefer to keep reports &amp;amp; data connections together).&amp;#xA0; For simplicity, the library shown below contains both reports and a data connection which is sales-specific.&lt;/p&gt;
&lt;p&gt;Under Files on the ribbon, click the down arrow for New Document and choose Report Data Source.&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741220" rel="lightbox"&gt;&lt;img alt="image" border="0" height="434" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741221" title="image" width="276"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sidenote&lt;/em&gt;&lt;/strong&gt;:&amp;#xA0; If you don&amp;#x2019;t see Report Data Source under the New Document menu, you&amp;#x2019;ll need to add the content type to the library first.&amp;#xA0; That&amp;#x2019;s a two-step process within the Library Settings&amp;#x2026;first, within the Advanced Settings, set &amp;#x201C;Allow Management of Content Types&amp;#x201D; to Yes&amp;#x2026;then back under General Settings choose &amp;#x201C;Add from existing content types&amp;#x201D; and select the various options that are related to BI data connections and/or reports (depending on what you need this library).&lt;/p&gt;
&lt;p&gt;Set the various Data Source Properties.&amp;#xA0; Make sure to use the &amp;#x201C;Microsoft SQL Server Analysis Services&amp;#x201D; data source type, as shown here:&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741222" rel="lightbox"&gt;&lt;img alt="SNAGHTML77c93dc" border="0" height="669" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741223" title="SNAGHTML77c93dc" width="840"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In the above screen shot, note the structure of the connection string.&amp;#xA0; For a bit more information about creating connections, see my blog entry titled &amp;#x201C;&lt;a href="http://www.sqlchick.com/entries/2012/9/14/comparison-of-direct-url-bism-and-rsds-data-connections-for.html" target="_blank"&gt;Comparison of Direct URL, BISM, and RSDS Data Connections for a Power View Report&lt;/a&gt;.&amp;#x201D;&lt;/p&gt;
&lt;p&gt;The problem related to my original error was that within this RSDS connection, I had a data source configured with a type of &amp;#x201C;Microsoft BI Semantic Model for Power View&amp;#x201D; which &amp;#x2013; as the name implies &amp;#x2013; will work for Power View but not for Report Builder.&amp;#xA0; Problem solved when the type was changed to SSAS.&lt;/p&gt;
&lt;p&gt;Here&amp;#x2019;s what the Report Data Source looks like when it&amp;#x2019;s been added to the document library:&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741224" rel="lightbox"&gt;&lt;img alt="image" border="0" height="482" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741225" title="image" width="836"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Binding the RSDS Connection to a Report Builder report in SharePoint 2013&lt;/h2&gt;
&lt;p&gt;To associate the Report Data Connection it to a Report Builder report, click the ellipses next to an existing report name, then the ellipses one more time, then select Manage Data Sources.&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741226" rel="lightbox"&gt;&lt;img alt="image" border="0" height="651" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741227" title="image" width="826"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Click the link on the name of your data source.&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741228" rel="lightbox"&gt;&lt;img alt="image" border="0" height="176" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741229" title="image" width="653"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ensure the &amp;#x201C;Shared data source&amp;#x201D; radio button is selected, and paste in the URL to the Report Data Source created previously.&amp;#xA0; Note this will have an RSDS file extension.&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;a href="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741230" rel="lightbox"&gt;&lt;img alt="image" border="0" height="279" src="http://www.sqlchick.com/resource/Windows-Live-Writer-69427710f655_10AFF-?fileId=22741231" title="image" width="825"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?a=UjNx0p0BqeE:M7uwSosqIZo:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?a=UjNx0p0BqeE:M7uwSosqIZo:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?i=UjNx0p0BqeE:M7uwSosqIZo:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?a=UjNx0p0BqeE:M7uwSosqIZo:7Q72WNTAKBA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlChick-MelissaCoates?d=7Q72WNTAKBA"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/SqlChick-MelissaCoates/~4/UjNx0p0BqeE" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/gfmry7QvSuU" height="1" width="1"/&gt;</description><pubDate>Tue, 21 May 2013 19:08:41 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/resolving-error-connecting-report-builder-to-a-powerpivot-data-source/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/resolving-error-connecting-report-builder-to-a-powerpivot-data-source/</feedburner:origLink></item><item><title>Security Questions: What permissions are required to create temporary tables?</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/UNQefmZPn1s/</link><description>&lt;p&gt;&lt;a href="http://www.flickr.com/photos/mthierry/4595284293/"&gt;&lt;img alt="Padlock" class="alignright size-full wp-image-4225" height="150" src="http://www.jasonstrate.com/wp-content/uploads/2013/05/Padlock.jpg" width="150"&gt;&lt;/a&gt;As I mentioned in the &lt;a href="http://wp.me/px2UY-168"&gt;introductory post&lt;/a&gt;, in the &lt;a href="http://www.jasonstrate.com/2013/05/webcast-presentation-materials-introduction-to-sql-server-security/"&gt;Introduction to SQL Server Security&lt;/a&gt;&amp;#xA0;session for&amp;#xA0;&lt;a href="http://pragmaticworks.com/"&gt;Pragmatic Work&amp;#x2019;s&lt;/a&gt;&amp;#xA0;&lt;a href="http://pragmaticworks.com/LearningCenter/FreeTrainingWebinars/FutureWebinars.aspx"&gt;Training on the T&amp;#x2019;s&lt;/a&gt;, I received a large number of questions that there wasn&amp;#x2019;t time to answer. &amp;#xA0;Instead of just a re-cap of all of the questions, instead I&amp;#x2019;ve opted to put together a post per topic. &amp;#xA0;Hopefully, this will help, not just those that attended the session, but also anyone searching for the same questions later on.&lt;/p&gt;
&lt;h2&gt;Temporary table question&lt;/h2&gt;
&lt;p&gt;The first question in the list is:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;What permissions are required to create temporary tables?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;I&amp;#x2019;ll be honest, this was a new one for me. &amp;#xA0;Not because it&amp;#x2019;s a bad question, but because I&amp;#x2019;ve never had problems trying to create temporary tables. &amp;#xA0;And also, I&amp;#x2019;ve never had complaints from users about not being able to create temporary tables.&lt;/p&gt;
&lt;p&gt;That fact of the matter is, that as long as a user can connect to a SQL Server instance, the user is able to create temporary tables. &amp;#xA0;There are no special permissions. &amp;#xA0;A login with the most basic permissions has full rights to create and use temporary tables. &amp;#xA0;As it also turns out, there are no permissions for blocking or limiting temporary table creation. &amp;#xA0;This last bit would actually be useful, given the ability in other users I&amp;#x2019;ve seen before to fill tempdb with their temporary data sets.&lt;/p&gt;
&lt;h2&gt;Temporary Table Demo&lt;/h2&gt;
&lt;p&gt;Just to demonstrate that any login with access can create temporary tables, we&amp;#x2019;ll run through a quick demo. &amp;#xA0;Using the script in listing 1, create a new login on a SQL Server instance.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;

--Listing 1. Create new login

USE [master]
GO
CREATE LOGIN [TempTableUser] WITH PASSWORD=N'pass@word1'
, DEFAULT_DATABASE=[master]
, CHECK_EXPIRATION=ON
, CHECK_POLICY=ON
GO

&lt;/pre&gt;
&lt;p&gt;Then connect to the SQL Server instance and run the create table script provided in listing 2. &amp;#xA0;You&amp;#x2019;ll see that without any issues, the user can create a temporary table.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;

--Listing 2.

CREATE TABLE #temp (Column1 INT)

&lt;/pre&gt;
&lt;h2&gt;Summary&lt;/h2&gt;
&lt;p&gt;Now this might not have been the deepest content on this blog ever, but it is a quick answer and proof that, as DBA&amp;#x2019;s we don&amp;#x2019;t have to do anything to allow temporary table access for users. &amp;#xA0;This question, though, makes me wonder, have you ever had issues with creating temporary tables? &amp;#xA0;Maybe someone out there has worked in a place where someone figured out how to block temporary tables create permissions.&lt;/p&gt;
&lt;div class="shr-publisher-4243"&gt;&lt;/div&gt;
&lt;div class="tentblogger-rss-footer"&gt;
&lt;hr&gt;
&lt;p&gt;You just finished reading &lt;a href="http://www.jasonstrate.com/?p=4243"&gt;Security Questions: What permissions are required to create temporary tables?&lt;/a&gt;!  Consider leaving a comment!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p align="center"&gt;Keep up to date with posts via &lt;a href="http://feeds.feedburner.com/stratesql"&gt;RSS&lt;/a&gt; or on twitter at &lt;a href="http://www.twitter.com%5Cstratesql"&gt;StrateSQL&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=LqM5qQ1N0eU:MGHs-LXZQHg:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=LqM5qQ1N0eU:MGHs-LXZQHg:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=LqM5qQ1N0eU:MGHs-LXZQHg:clraHZBW0_I"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=clraHZBW0_I"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=LqM5qQ1N0eU:MGHs-LXZQHg:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=LqM5qQ1N0eU:MGHs-LXZQHg:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=LqM5qQ1N0eU:MGHs-LXZQHg:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=LqM5qQ1N0eU:MGHs-LXZQHg:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/UNQefmZPn1s" height="1" width="1"/&gt;</description><pubDate>Tue, 21 May 2013 12:30:22 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/security-questions-what-permissions-are-required-to-create-temporary-tables/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/security-questions-what-permissions-are-required-to-create-temporary-tables/</feedburner:origLink></item><item><title>SQL Server Security Webcast Questions – Series Introduction</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/ytCb-FlGsLE/</link><description>&lt;p&gt;&lt;a href="http://www.flickr.com/photos/mthierry/4595284293/"&gt;&lt;img alt="Padlock" class="alignright size-full wp-image-4225" height="150" src="http://www.jasonstrate.com/wp-content/uploads/2013/05/Padlock.jpg" width="150"&gt;&lt;/a&gt;Earlier this month, I presented an &lt;a href="http://www.jasonstrate.com/2013/05/webcast-presentation-materials-introduction-to-sql-server-security/"&gt;Introduction to SQL Server Security&lt;/a&gt; session for &lt;a href="http://pragmaticworks.com/"&gt;Pragmatic Work&amp;#x2019;s&lt;/a&gt; &lt;a href="http://pragmaticworks.com/LearningCenter/FreeTrainingWebinars/FutureWebinars.aspx"&gt;Training on the T&amp;#x2019;s&lt;/a&gt;. &amp;#xA0;A video of the session is available at the &lt;a href="http://pragmaticworks.com/LearningCenter/FreeTrainingWebinars/WebinarDetails.aspx?ResourceId=522"&gt;Pragmatic Works website&lt;/a&gt;. &amp;#xA0;As a part of that session, I received a couple dozen questions about security that we didn&amp;#x2019;t have a chance to go over during the Q&amp;amp;A portion of the webcast.&lt;/p&gt;
&lt;p&gt;Rather than write a short, possibly insufficient, answer for each question, I decided instead to put each question into a blog post. &amp;#xA0;That way, they&amp;#x2019;ll be a bit easier to track down, read, and get the information you want out of them. &amp;#xA0;These questions run from simple to complex.&lt;/p&gt;
&lt;h2&gt;Security Questions Asked&lt;/h2&gt;
&lt;p&gt;For the questions, I&amp;#x2019;ve made a few edits here and there for clarity. &amp;#xA0;Overall, though, these are all of the questions that I received. &amp;#xA0;As I answer the questions, I&amp;#x2019;ll add links to the posts.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://wp.me/px2UY-16r"&gt;What permissions are required to create temporary tables?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://wp.me/px2UY-16C"&gt;Do we have easy way to grant all stored procedures&amp;#xA0;execution in a single shot?&lt;/a&gt;&amp;#xA0;&lt;em&gt;(live on 5-22-2013 10 AM CST)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Can you please expound on the difference between &amp;#x201C;Grant&amp;#x201D; and &amp;#x201C;With Grant?&amp;#x201D;&lt;/li&gt;
&lt;li&gt;What is the&amp;#xA0;difference&amp;#xA0;between sysadmin and CONTROL SERVER Permission?&lt;/li&gt;
&lt;li&gt;Whats the best role(s) to assign a junior DBA if you want them to see jobs, error logs, activity monitor, and run profiler, but not be able to manage jobs or kill processes?&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Do the different ways of accessing SQL Server (Windows Athentication, SQL Server authentication, certificate or key) have differing authentication and authorization performance? If so, can you order the list?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Does 2012 provide TRUNCATE TABLE permissions?&lt;/li&gt;
&lt;li&gt;How do you access the list of Server Securables?&lt;/li&gt;
&lt;li&gt;How can i be sure a user is no longer used, so it can be deleted? Or when was the last time the logon was used?&lt;/li&gt;
&lt;li&gt;How can you migrate users and passwords from one server to another server?&lt;/li&gt;
&lt;li&gt;How would handle permissions for people that need full SQL Agent permissions (including being able to edit other peoples jobs) without giving sysadmin rights?&lt;/li&gt;
&lt;li&gt;I work in a bank and federal inspectors are always looking at how secure are my databases. How would you prioritize security for the SQL Server?&lt;/li&gt;
&lt;li&gt;What is the relationship between logins, credentials, and proxies? And why they were introduced?&lt;/li&gt;
&lt;li&gt;What are some tips regarding roles other than sysadmin?&lt;/li&gt;
&lt;li&gt;If an associate leaves, what is the best way to remove them from not only the logins but also all the databases?&lt;/li&gt;
&lt;li&gt;What is the difference between db_datawriter and db_ddladmin?&lt;/li&gt;
&lt;li&gt;How do I resolve the error: Drop Failed for User &amp;#x2013; The database principal owns a schema in the database, and cannot be dropped?&lt;/li&gt;
&lt;li&gt;In 2008, a user at the DB level remains when you remove them at the Server level. Is this by design or perhaps &amp;#x2018;fixed&amp;#x2019; in 2012 so that if a user is deleted at the server level she is also deleted from all database security?&lt;/li&gt;
&lt;li&gt;Is the chart or dashboard in the Policy Based Management slide a standard one in SQL Server?&lt;/li&gt;
&lt;li&gt;Is the grantor important? When, I as sysadmin grant rigths to a user I believe I come up as sa as grantor.&lt;/li&gt;
&lt;li&gt;Is there a way to grant user to create alerts?&lt;/li&gt;
&lt;li&gt;Is there a way to hide column/restrict from users?&lt;/li&gt;
&lt;li&gt;Is there way to limit permission with date and time? For example, I want to give read access to a table within certain time period. For example, during business hours only.&lt;/li&gt;
&lt;li&gt;Can you grant access through a job that runs at a specified time and remove this access through another job with the end period?&lt;/li&gt;
&lt;li&gt;On a clustered server, can I grant access to a user to run SQL Trace (Alter SQL Trace permission) on specific databases but not all of them?&lt;/li&gt;
&lt;li&gt;I have a login that does not have an entry in view sys.server_permissions. Shouldn&amp;#x2019;t every login has at least one entry, for &amp;#x201C;Connect SQL&amp;#x201D; as value for permission_name?&lt;/li&gt;
&lt;li&gt;Temp tables: as a DBA, can i delete temp tables that are much too big?&lt;/li&gt;
&lt;li&gt;Anyways to identify host name if an app is used through web, as well as mobile, to access SQL database? This&amp;#xA0;question&amp;#xA0;is just for tracking DB SELECT activity and the device/app usage from mobile?&lt;/li&gt;
&lt;li&gt;What is the name of the recommended book again?&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Last Words&lt;/h2&gt;
&lt;p&gt;Some of these post may inspire additional questions. &amp;#xA0;Please leave those questions in the comments and I&amp;#x2019;ll either write an additional post to cover them or re-direct you to a post or other resource that can answer the question.&lt;/p&gt;
&lt;div class="shr-publisher-4224"&gt;&lt;/div&gt;
&lt;div class="tentblogger-rss-footer"&gt;
&lt;hr&gt;
&lt;p&gt;You just finished reading &lt;a href="http://www.jasonstrate.com/?p=4224"&gt;SQL Server Security Webcast Questions - Series Introduction&lt;/a&gt;!  Consider leaving a comment!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p align="center"&gt;Keep up to date with posts via &lt;a href="http://feeds.feedburner.com/stratesql"&gt;RSS&lt;/a&gt; or on twitter at &lt;a href="http://www.twitter.com%5Cstratesql"&gt;StrateSQL&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=qErgzHNkKIs:OiMD-txfQMs:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=qErgzHNkKIs:OiMD-txfQMs:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=qErgzHNkKIs:OiMD-txfQMs:clraHZBW0_I"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=clraHZBW0_I"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=qErgzHNkKIs:OiMD-txfQMs:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=qErgzHNkKIs:OiMD-txfQMs:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=qErgzHNkKIs:OiMD-txfQMs:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=qErgzHNkKIs:OiMD-txfQMs:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/ytCb-FlGsLE" height="1" width="1"/&gt;</description><pubDate>Tue, 21 May 2013 12:00:31 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/sql-server-security-webcast-questions-series-introduction/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/sql-server-security-webcast-questions-series-introduction/</feedburner:origLink></item><item><title>Consulting company: Perm/Salaried vs 1099/W2</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/8sPPCBOPp8g/</link><description>&lt;p&gt;One of my pet peeves is seeing a top-notch BI architect/developer working as a salaried/perm employee of a consulting company where they are making a good salary but are being billed out to the client at a rate that is 3-4 times what they are making.&amp;#xA0; Are they getting taken advantage if their salary is 120k and they are billed to clients at $200/hr (and they are billable 90% of the time and they must travel 50%+)?&amp;#xA0; Is it better to&amp;#xA0;go 1099/W2 instead (I wrote a bit about this at &lt;a href="http://www.jamesserra.com/archive/2011/11/salaried-employee-vs-contractor/"&gt;Salaried employee vs contractor&lt;/a&gt;)?&lt;/p&gt;
&lt;p&gt;I asked a veteran recruiter who has worked for many placement firms and now runs his own small firm about this.&amp;#xA0; Specifically, I asked him these questions:&lt;/p&gt;
&lt;p&gt;Are you getting taken advantage of if your salary is 110k and you are billed to clients at $150/hr?&amp;#xA0; Is it better to&amp;#xA0;go 1099/W2 instead?&amp;#xA0; When you were working as a recruiter for the big consulting companies, did you try to steer consultants to go perm instead of &lt;a href="http://www.jamesserra.com/archive/2011/09/consultants-1099-or-w-2/"&gt;W2 or 1099&lt;/a&gt; because you would make more money off them?&amp;#xA0; Where consultants laid off if they were on the bench more than a couple of weeks?&amp;#xA0; Did you place less-qualified people on projects because they were the only one&amp;#x2019;s available?&lt;/p&gt;
&lt;p&gt;We never cared if a person was salaried or a 1099. &amp;#xA0;I guess a salaried person is more likely to stay with you longer because it is a pain to change benefits (especially if they are really good benefits) when you change jobs, but other than that, the percentage spreadsheets I mentioned before (see &lt;a href="http://www.jamesserra.com/archive/2013/05/billing-rates-other-side-of-the-fence-part-2/"&gt;Billing rates &amp;#x2013; other side of the fence, part 2&lt;/a&gt;) always spit out a number and it didn&amp;#x2019;t have a bias towards salaried vs. 1099.&lt;/p&gt;
&lt;p&gt;As for the specific question about a salary of $110K on a bill rate of $150/hr, it depends on the benefits (for example, are you taking insurance for a single person, a married couple, or a family?).&amp;#xA0; Also, what other benefits come with the salary? 401(k) match?&amp;#xA0; Tuition reimbursement?&amp;#xA0; Utilization bonus (if you work over a certain number of billable hours in a calendar year, do you get a bonus?). &amp;#xA0;I&amp;#x2019;d need a clearer picture of what comes with the $110K salary to know if it is a bad deal for the consultant.&amp;#xA0; I&amp;#x2019;d think at a rate of $150/hr the vendor could afford a higher salary, just my gut though until I know more about the vendor benefits.&lt;/p&gt;
&lt;p&gt;Also, this type of stuff applies across different industries.&amp;#xA0; I know a person&amp;#xA0;in a law firm that has an hourly billable rate of $380/hr.&amp;#xA0; She has a nice salary, but it isn&amp;#x2019;t anything out of this world.&amp;#xA0; They scoreboard the entire firm to show how much money you bring in through your billable hours, how much new business you won, etc.&amp;#xA0; There is a lot hidden behind the curtain in all industries, so it is hard to compare apples to apples on these things sometimes.&lt;/p&gt;
&lt;p&gt;As for bench policy, it was always a case by case basis.&amp;#xA0; Has the person been with the firm for a long time?&amp;#xA0; Meaning, has the firm made a decent profit on this person over the years.&amp;#xA0; At the $17B firm where I worked, there was a lady that had been there 30 years.&amp;#xA0; She was rarely on the bench, but if she ever did need bench time, she had earned it and it was there no matter what.&amp;#xA0; A general rule of thumb is a week of bench per year of service.&amp;#xA0; Also, the person&amp;#x2019;s skill set was a factor &amp;#x2013; was the person in a marketable space (Java people in some cities are gold, you&amp;#x2019;d give that person bench no matter what because they&amp;#x2019;d be out on another assignment for you very soon.&amp;#xA0; On the contrary, if the person was a mainframer, that work isn&amp;#x2019;t as hot in most cities after Y2K, so that person probably had a shorter shelf life.&amp;#xA0; One vendor (a $1B company) was a huge mainframe shop and after Y2K they had a ton of employees that were no longer billable.&amp;#xA0; They kept them all on the bench and retrained them in Java.&amp;#xA0; It was a huge investment/loss to the vendor and Wall Street killed them for the move and their stock price sank.&amp;#xA0; So even when they &amp;#x201C;did the right thing&amp;#x201D; and took care of their people, Wall Street slammed them.&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:D7DqB2pKExk"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=Kw5B2ha9kBg:toRDyrKpxCY:D7DqB2pKExk"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=Kw5B2ha9kBg:toRDyrKpxCY:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=Kw5B2ha9kBg:toRDyrKpxCY:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:3QFJfmc7Om4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=Kw5B2ha9kBg:toRDyrKpxCY:3QFJfmc7Om4"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=Kw5B2ha9kBg:toRDyrKpxCY:-BTjWOF_DHI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=Kw5B2ha9kBg:toRDyrKpxCY:-BTjWOF_DHI"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/JamesSerraSSPedia/~4/Kw5B2ha9kBg" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/8sPPCBOPp8g" height="1" width="1"/&gt;</description><pubDate>Tue, 21 May 2013 10:00:12 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/consulting-company-permsalaried-vs-1099w2/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/consulting-company-permsalaried-vs-1099w2/</feedburner:origLink></item><item><title>Your Community, Your Voice, Your Forum</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/wX-eJnhubTI/</link><description>&lt;div class="CBD_ad"&gt;&lt;/div&gt;
&lt;p&gt;For me, one of the most rewarding things about blogging are the conversations we have together.&lt;/p&gt;
&lt;p&gt;The opportunity to connect, share and grow with passionate people from all over the world is a &lt;strong&gt;great privilege&lt;/strong&gt;. I&amp;#x2019;ve met so many wonderful people through our community, learning something from each of you about technology and even life.&lt;/p&gt;
&lt;p&gt;On occasion I myself have attempted to share the odd pearl of wisdom or snippet of advice. Through my blogging tenure I&amp;#x2019;ve discovered that I&amp;#x2019;m particularly fond of waxing on about Professional Development. So much so in fact, that some folks seem to consider me to be some sort of authority on the subject. Ha!&lt;/p&gt;
&lt;p&gt;A curious side-effect to this infamy has been that people often reach out to me for advice and guidance. This is something I take very seriously indeed and I do my utmost to provide a well considered personal reply to all those who reach out, whether via email, in a &lt;a href="http://www.johnsansom.com/your-road-to-becoming-a-dba/"&gt;blog post&lt;/a&gt; or in the blog &lt;a href="http://www.johnsansom.com/how-to-become-a-sql-server-dba/"&gt;comments&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This got me thinking. What if there were some way that I could create a space to bring together all this advice, experience and hot air, making it available for the benefit of everyone. Better still, what if I could somehow tap into the collective wisdom and experience of the entire community, increasing the quality of advice available to those seeking guidance. Sounds like a marvelous idea.&lt;/p&gt;
&lt;p&gt;That&amp;#x2019;s why I started the &lt;a href="http://www.johnsansom.com/sqlforum/" target="_blank" title="SQLBrit Community Forum"&gt;SQL Brit Community Forum&lt;/a&gt;.&lt;/p&gt;
&lt;div class="wp-caption aligncenter" id="attachment_10715"&gt;
&lt;a href="http://www.johnsansom.com/sqlforum/"&gt;&lt;img alt="Lion Roaring" class="size-full wp-image-10715 " height="333" src="http://cdn.johnsansom.com/wp-content/uploads/2013/02/LionRoaring.jpg" width="500"&gt;&lt;/a&gt;&lt;p class="wp-caption-text"&gt;let&amp;#x2019;s make our community a roaring success together&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I wanted to create:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A place where we can talk about all the other, non-technical, stuff there is to be being a Data Professional.&lt;/li&gt;
&lt;li&gt;A friendly, open and honest community, where members support each other on their journey towards becoming the Data Professionals they want to be.&lt;/li&gt;
&lt;li&gt;An environment that moves beyond the limits of blog comments by providing a platform that enables passionate, vibrant and robust conversation.&lt;/li&gt;
&lt;li&gt;A place where members can benefit from the collective experience, knowledge and wisdom of each other.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;&lt;span&gt;Your Community in Action&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The community forum has been open for a couple of months already, with &lt;strong&gt;over 120 registered members&lt;/strong&gt; and &lt;strong&gt;700 posts&lt;/strong&gt;, it&amp;#x2019;s only now however that I&amp;#x2019;m choosing to blog about it.&lt;/p&gt;
&lt;p&gt;As with all ideas I was&amp;#xA0;initially&amp;#xA0;unsure if it would get much traction but then once I saw the positive effect the community was having, I became&amp;#xA0;convinced&amp;#xA0;that I must do what I can to share it further.&lt;/p&gt;
&lt;p&gt;You see what really&amp;#xA0;surprised&amp;#xA0;me was that the community had become not just a place where the experienced folks supported the new on their journey (like &lt;a href="http://johnsansom.com/sqlforum/welcome-and-general-discussion/new-commer/"&gt;here&lt;/a&gt;,&amp;#xA0;&lt;a href="http://johnsansom.com/sqlforum/professional-development/complete-newbie-taking-the-plunge/"&gt;here&lt;/a&gt;&amp;#xA0;or&amp;#xA0;&lt;a href="http://johnsansom.com/sqlforum/professional-development/new-comer-from-la-area-with-lots-of-questions-)/"&gt;here&lt;/a&gt;) but also a place where members could refine their existing expertise further&amp;#xA0;(like&amp;#xA0;&lt;a href="http://johnsansom.com/sqlforum/professional-development/what-character-traits-do-you-look-for-in-a-dba/"&gt;here&lt;/a&gt;&amp;#xA0;and&amp;#xA0;&lt;a href="http://johnsansom.com/sqlforum/professional-development/there's-just-never-enough-time/"&gt;here&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Folks are using the community to bounce ideas off of one another and are taking their professional development to the next level through collaborating together. This is in a word is,&amp;#xA0;fantastic!&lt;/p&gt;
&lt;h2&gt;&lt;span&gt;Creating a Roaring Success Together&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;You see the thing about community is the more you give the more rewarding the experience becomes for everyone involved.&lt;/p&gt;
&lt;p&gt;As Data Professionals we&amp;#x2019;re all super busy chaps that have a lot of competing priorities for our time. I would not be asking for yours if I did not believe in what we&amp;#x2019;re doing here. My will alone is unfortunately not enough and for this community to truly be&amp;#xA0;successful&lt;strong&gt;&amp;#xA0;I need your help&lt;/strong&gt; to make it happen.&lt;/p&gt;
&lt;p&gt;I know that you are passionate about your career and the SQL community because you&amp;#x2019;re here reading this. Whether to share your own experiences or to enjoy the opportunity to learn from others, I would be delighted for you to &lt;a href="http://www.johnsansom.com/sqlforum/" title="Join Community Forum"&gt;join&lt;/a&gt;&amp;#xA0;our new&amp;#xA0;community forum and be a part of making it a roaring success.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Thank you!&lt;/strong&gt;
&lt;/p&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div class="yarpp-related-rss"&gt;
&lt;h3&gt;Related posts:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://www.johnsansom.com/whats-it-like-to-be-a-dba/" rel="bookmark" title="Whats it Like to Be a DBA?"&gt;What&amp;#x2019;s it Like to Be a DBA?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.johnsansom.com/your-dba-role-is-changing-are-you-ready/" rel="bookmark" title="Your DBA Role is Changing. Are you Ready?"&gt;Your DBA Role is Changing. Are you Ready?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.johnsansom.com/how-to-be-an-expert-in-your-company/" rel="bookmark" title="How To Be An Expert At What You Do"&gt;How To Be An Expert At What You Do&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?a=2lR5-5ABrUo:QF04g08RWA0:6W8y8wAjSf4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?d=6W8y8wAjSf4"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?a=2lR5-5ABrUo:QF04g08RWA0:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?a=2lR5-5ABrUo:QF04g08RWA0:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?i=2lR5-5ABrUo:QF04g08RWA0:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?a=2lR5-5ABrUo:QF04g08RWA0:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JohnSansom/SQLServerpediaSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/JohnSansom/SQLServerpediaSyndication/~4/2lR5-5ABrUo" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/wX-eJnhubTI" height="1" width="1"/&gt;</description><pubDate>Tue, 21 May 2013 05:00:02 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/your-community-your-voice-your-forum/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/your-community-your-voice-your-forum/</feedburner:origLink></item><item><title>The many uses of CROSS APPLY</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/TUHi0Nliy_A/</link><description>&lt;p&gt;Over the last few years of studying SQL I&amp;#x2019;ve noticed 4 different uses for the command CROSS APPLY.&lt;/p&gt;
&lt;p&gt;In the first use I ever saw, and certainly the one I see the most commonly, CROSS APPLY is used to run a function for each row of the query.  This is also the easiest use to find in &lt;a href="http://msdn.microsoft.com/en-us/library/ms177634.aspx"&gt;BOL&lt;/a&gt;.  Here is a very common example using a DMV and a DMF.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT *
FROM sys.dm_exec_query_stats
CROSS APPLY sys.dm_exec_sql_text(sql_handle)&lt;/pre&gt;
&lt;p&gt;Next while studying XML (see &lt;a href="http://sqlstudies.com/2012/10/15/a-review-of-sql-interoperability-joes-2-pros-volume-5-by-rick-a-morelan/"&gt;A review of SQL Interoperability / Joes 2 Pros Volume 5 by Rick A Morelan &lt;/a&gt;) I found out that you can use it to shred XML.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT Store.Name, 
	StoreInfo.StoreDetails.value('declare default element namespace 
		"http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey"; AnnualSales[1]','decimal') AS AnnualSales,
	StoreInfo.StoreDetails.value('declare default element namespace 
		"http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey"; AnnualRevenue[1]','decimal') AS AnnualRevenue
FROM Sales.Store Store
CROSS APPLY Store.Demographics.nodes('declare default element namespace 
		"http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey"; 
		/StoreSurvey') AS StoreInfo(StoreDetails)
GO&lt;/pre&gt;
&lt;p&gt;Then while reading this post &amp;#x201C;&lt;a href="http://dba.stackexchange.com/questions/35620/is-there-a-better-option-than-union-all-for-multiple-selects-from-the-same-row"&gt;Is there a better option than Union All for multiple selects from the same row?&lt;/a&gt;&amp;#x201C; on &lt;a href="http://sqlstudies.com/feed/dba.stackexchange.com"&gt;dba.stackexchange.com&lt;/a&gt; I saw an example of using CROSS APPLY to unpivot a table.  I was stunned at how simple it was.  To make sure I understood it well enough to remember when I needed it, and to share something I felt was pretty cool, I posted a blog entry &amp;#x201C;&lt;a href="http://sqlstudies.com/2013/04/01/unpivot-a-table-using-cross-apply/"&gt;UNPIVOT a table using CROSS APPLY&lt;/a&gt;&amp;#x201C;.  Later I found this great article on &lt;a href="http://www.sqlservercentral.com" rel="nofollow"&gt;http://www.sqlservercentral.com&lt;/a&gt;.  &lt;a href="http://www.sqlservercentral.com/articles/CROSS+APPLY+VALUES+UNPIVOT/91234/"&gt;An Alternative (Better?) Method to UNPIVOT (SQL Spackle)&lt;/a&gt;&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT UnPivotMe.FirstName, UnPivotMe.LastName, 
        CrossApplied.Question, CrossApplied.Answer
FROM UnPivotMe
CROSS APPLY (VALUES (Question1, Answer1),
                    (Question2, Answer2),
                    (Question3, Answer3),
                    (Question4, Answer4),
                    (Question5, Answer5)) 
            CrossApplied (Question, Answer)&lt;/pre&gt;
&lt;p&gt;And last but certainly not least I learned how to use The APPLY operator for reusable computations while watching Kendra Little&amp;#x2019;s &lt;a href="http://www.brentozar.com/archive/2013/04/5-tsql-features-youre-missing-out-on-video/"&gt;5 T-SQL Features You&amp;#x2019;re Missing Out On&lt;/a&gt;.  Something I highly recommend watching.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;SELECT Person.Title, Person.FirstName, Person.MiddleName, Person.LastName, UPPER(ComputedColumn.FullName)
FROM Person.Person Person
CROSS APPLY (SELECT ISNULL(Title+' ','')+ISNULL(FirstName+' ','')+
			ISNULL(MiddleName+' ', '')+ISNULL(LastName,'') AS FullName) ComputedColumn&lt;/pre&gt;
&lt;p&gt;Now I will admit I didn&amp;#x2019;t go into great detail on any of these topics, but I did try to provide at least a basic example, and a link or two where you can to get more in-depth information.&lt;/p&gt;
&lt;p&gt;I&amp;#x2019;m truly amazed at the versatility of this operator.  These are the four major uses (there are a number of permutations on each) that I&amp;#x2019;ve seen so far and I wouldn&amp;#x2019;t be surprised to find more.  If you know another then please let me know in the comments.  I&amp;#x2019;d love to add it to the list.&lt;/p&gt;
&lt;br&gt;Filed under: &lt;a href="http://sqlstudies.com/category/microsoft-sql-server/"&gt;Microsoft SQL Server&lt;/a&gt;, &lt;a href="http://sqlstudies.com/category/sqlserverpedia-syndication/"&gt;SQLServerPedia Syndication&lt;/a&gt;, &lt;a href="http://sqlstudies.com/category/microsoft-sql-server/t-sql/"&gt;T-SQL&lt;/a&gt; Tagged: &lt;a href="http://sqlstudies.com/tag/code-language/"&gt;code language&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/cross-apply/"&gt;CROSS APPLY&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/language-sql/"&gt;language sql&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/microsoft-sql-server-2/"&gt;microsoft sql server&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/sql-statements/"&gt;sql statements&lt;/a&gt;, &lt;a href="http://sqlstudies.com/tag/t-sql/"&gt;T-SQL&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gocomments/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/godelicious/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gofacebook/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gotwitter/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/gostumble/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/godigg/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;a href="http://feeds.wordpress.com/1.0/goreddit/sqlstudiesdotcom.wordpress.com/561/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlstudiesdotcom.wordpress.com/561/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=sqlstudies.com&amp;amp;blog=39382117&amp;amp;post=561&amp;amp;subd=sqlstudiesdotcom&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/TUHi0Nliy_A" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 12:01:04 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/the-many-uses-of-cross-apply/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/the-many-uses-of-cross-apply/</feedburner:origLink></item><item><title>Before Triggers in SQL Server</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/iXCOZeDWUwo/</link><description>&lt;p&gt;There are lots of questions asking whether there are before triggers in SQL Server. There are nothing called Before Triggers in SQL Server. &lt;/p&gt; &lt;p&gt;What is the requirement for the Before Trigger?&lt;/p&gt; &lt;p&gt;Let us say, you want to verify some values other table before inserting it. In SQL Server, you can use INSTEAD OF TRIGGER.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;CREATE TRIGGER tr_data_before ON Table_Data
INSTEAD OF INSERT
AS
BEGIN
SET NOCOUNT ON
IF EXISTS (SELECT 1 FROM Tablle_Data2)
BEGIN
    INSERT INTO dbo.Table_Data
SELECT *
FROM INSERTED
END
END
&lt;/pre&gt;
&lt;br&gt;&lt;p&gt;However, in &lt;a href="http://www.techonthenet.com/oracle/triggers/before_update.php" target="_blank"&gt;Oracle&lt;/a&gt; and &lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Fsqlp%2Frbafybeforesql.htm" target="_blank"&gt;DB2&lt;/a&gt; there are Before Triggers.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;http://dbfriend.blogspot.com/feeds/posts/default?alt=rss&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/iXCOZeDWUwo" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 10:46:39 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/before-triggers-in-sql-server/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/before-triggers-in-sql-server/</feedburner:origLink></item><item><title>#SQLSATATL simply rocked…</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/k9ZYcS8njbs/</link><description>&lt;p&gt;&lt;a href="http://codegumbo.com/images/SQLSATATL-simply-rocked_9BC4/sqlsatatl.jpg"&gt;&lt;img align="left" alt="sqlsatatl" border="0" height="183" src="http://codegumbo.com/images/SQLSATATL-simply-rocked_9BC4/sqlsatatl_thumb.jpg" title="sqlsatatl" width="244"&gt;&lt;/a&gt;So, last Saturday, I went to the first SQL Saturday in Atlanta that I had absolutely no responsibility on the actual day of the event.&amp;#xA0; I wasn&amp;#x2019;t an organizer, I didn&amp;#x2019;t really even volunteer.&amp;#xA0; As a chapter leader for AtlantaMDF, I do have to go in and pay the bills later this week, but for the most part, I got to walk around and revel in the day.&amp;#xA0; &lt;/p&gt;
&lt;p&gt;And it was a good day.&amp;#xA0; The team (led by &lt;a href="http://weblogs.sqlteam.com/geoffh/default.aspx" target="_blank"&gt;Geoff Hiten&lt;/a&gt;) pulled off another great event; 555 people attended the event, and there were some AWESOME sessions throughout the day.&amp;#xA0; I was in the 9 am slot, and my session on &lt;a href="http://www.sqlsaturday.com/viewsession.aspx?sat=220&amp;amp;sessionid=13973" target="_blank"&gt;Biggish Data&lt;/a&gt; went well, even if (as usual) I had WAY too many slides.&amp;#xA0; Speaking of slides, you should be able to download the deck from the SQLSaturday 220 &lt;a href="http://www.sqlsaturday.com/schedule.aspx" target="_blank"&gt;schedule&lt;/a&gt; (as well as many other great presentations).&amp;#xA0; I did have to slip out early since this weekend was my weekend with the kids.&amp;#xA0; My current youngest (Grace) had to get service hours for beta club, so she got to hang out with me, but I needed to get back home early to hang out with the oldest one.&lt;/p&gt;
&lt;p&gt;So what was cool?&amp;#xA0; What did I learn?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The number one highlight for me was watching &lt;a href="http://sqlblog.com/blogs/louis_davidson/default.aspx" target="_blank"&gt;Louis Davidson&lt;/a&gt; demo Red Gate&amp;#x2019;s &lt;a href="http://www.red-gate.com/products/dba/sql-monitor/?utm_source=bing&amp;amp;utm_medium=cpc&amp;amp;utm_content=unmet_need&amp;amp;utm_campaign=sqlmonitor" target="_blank"&gt;SQL Monitor&lt;/a&gt; tool, and he chose one of my &lt;a href="http://sqlmonitormetrics.red-gate.com/average-io-stalls/" target="_blank"&gt;custom metrics&lt;/a&gt; to use in the show.&amp;#xA0; I respect Louis a lot, and it made my day.&lt;/li&gt;
&lt;li&gt;I learned that I need to cut out about 10 slides out of my presentation.&lt;/li&gt;
&lt;li&gt;I had a great conversation with a few people about table partitioning and performance gains; I think there&amp;#x2019;s enough material for a future session explaining why you will or won&amp;#x2019;t see performance benefits from partitioning.&amp;#xA0; Hmmmm&amp;#x2026;.&lt;/li&gt;
&lt;li&gt;I had another excellent conversation with &lt;a href="http://arcanecode.com/" target="_blank"&gt;Robert Cain&lt;/a&gt; regarding the growth of SQLSaturday&amp;#x2019;s, and bounced around a few ideas about moving to a mid-tier model.&amp;#xA0; Kind of like what &lt;a href="http://www.sqlpass.org/sqlrally/2012/dallas/" target="_blank"&gt;SQLRally&lt;/a&gt; was supposed to become, but different.&amp;#xA0; &lt;/li&gt;
&lt;li&gt;I also got to hang out with &lt;a href="http://sqlblog.com/blogs/andy_leonard/default.aspx" target="_blank"&gt;Andy Leonard&lt;/a&gt;.&amp;#xA0;&amp;#xA0; He and my Grace had a good time discussing movies (&lt;a href="http://www.bing.com/videos/search?q=Where%27s+my+super+suit&amp;amp;view=detail&amp;amp;mid=A0C016714DD73D96B719A0C016714DD73D96B719&amp;amp;first=0&amp;amp;FORM=NVPFVR" target="_blank"&gt;Where&amp;#x2019;s my super suit?&lt;/a&gt;).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Mostly, I just got jazzed about being back in the #sqlfamily.&amp;#xA0; Hopefully, I can build off that momentum, and start blogging again.&amp;#xA0;&amp;#xA0; Granted, the next few months are going to be personally interesting, but I need to make time to share again.&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:D7DqB2pKExk"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?i=idzSnbDPyPY:1yL55Nz78SQ:D7DqB2pKExk"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?i=idzSnbDPyPY:1yL55Nz78SQ:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?i=idzSnbDPyPY:1yL55Nz78SQ:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?a=idzSnbDPyPY:1yL55Nz78SQ:3QFJfmc7Om4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/CodegumboSqlserverpediaSyndication?i=idzSnbDPyPY:1yL55Nz78SQ:3QFJfmc7Om4"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/CodegumboSqlserverpediaSyndication/~4/idzSnbDPyPY" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/k9ZYcS8njbs" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 10:39:28 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/sqlsatatl-simply-rocked/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/sqlsatatl-simply-rocked/</feedburner:origLink></item><item><title>Last Weeks Top “Reading” Links #33</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/mYsXmE1IzAQ/</link><description>&lt;p&gt;&lt;a href="http://www.jasonstrate.com/wp-content/uploads/2012/10/2012-01-013.jpg"&gt;&lt;img align="right" alt="2012-01-013" border="0" height="143" src="http://www.jasonstrate.com/wp-content/uploads/2012/10/2012-01-013_thumb.jpg" title="2012-01-013" width="189"&gt;&lt;/a&gt;For those that follow me on &lt;a href="https://twitter.com"&gt;twitter&lt;/a&gt; (&lt;a href="https://twitter.com/stratesql"&gt;@StrateSQL&lt;/a&gt;), you&amp;#x2019;ll know that throughout the day I tweet out some links of things I find interesting. &amp;#xA0;These tweets include &amp;#x201C;Reading&amp;#x201D; in the message and are items I&amp;#x2019;ve read over the past few days, usually after hours when sharing would be less than useful, and spaced out to avoid spamming. &amp;#xA0;The content of the links usually pertain to SQL Server, technology, and career topics; which I think others would find useful.&lt;/p&gt;
&lt;h2&gt;Most Popular Link&lt;/h2&gt;
&lt;p&gt;The most popular link that I sent out this week doesn&amp;#x2019;t have the most safe-for-work content. &amp;#xA0;It&amp;#x2019;s basically a couple with a restaurant in Arizona that decided to take on the internet after a poor reception on some reality show they were on. &amp;#xA0;It was something like, &amp;#x201C;your restaurant sucks, let me show everybody what morons you are&amp;#x201D; &amp;#x2013; that&amp;#x2019;s not the name of the show, but it sums it up nicely. &amp;#xA0;Anyways, they take on the internet, and low-and-behold, the internet wins.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;
&lt;p&gt;&amp;#x201C;This Is The Most Epic Brand Meltdown On Facebook Ever&amp;#x201D; &lt;a href="http://t.co/39QQiGtQ2L" title="http://bit.ly/15LrL4X"&gt;bit.ly/15LrL4X&lt;/a&gt; &amp;lt;&amp;#x2013; just wow&lt;/p&gt;
&lt;p&gt;&amp;#x2014; Jason Strate (@StrateSQL) &lt;a href="https://twitter.com/StrateSQL/status/334493915510099968"&gt;May 15, 2013&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;#xA0;&lt;/p&gt;
&lt;h2&gt;Last week&amp;#x2019;s top 11! &amp;#x201C;Reading&amp;#x201D; Links&lt;/h2&gt;
&lt;p&gt;Along with the top link, here are the top twenty items relating to SQL Server, technology and careers that were sent out last week. &amp;#xA0;I had planned for a top 10, but number 11 is a review of my indexing book &amp;#x2013; so I&amp;#x2019;ve included it and recommend you read that&amp;#x2026; then read my indexing book.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://bit.ly/1026zi3"&gt;Geek City: What gets logged for index rebuild operations? [52 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/17Lywzb"&gt;How a Single Tweet Can Change Your Career [41 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/10ypt4l"&gt;5 SQL Server White Papers Every DBA Should Read [36 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://buff.ly/Z9f7XV"&gt;Know the Difference Between Your Data and Your Metrics [30 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/ZIh12R"&gt;Consultants &amp;#x2013; Why pay more? [24 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/ZNmp4R"&gt;SQL Server Customer Advisory Team &amp;#x2013; SQL Server Best Practices [19 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/YBAvYc"&gt;Why CONTROL SERVER Doesn&amp;#x2019;t Cut It [15 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/ZJkavF"&gt;Introducing our latest SQL Server 2008 Microsoft Certified Master &amp;#x2013; Wayne Sheffield [15 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/11xvk9Q"&gt;Doing Your Job [14 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/YtmlrY"&gt;Distinct Aggregation Considered Harmful [14 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/13Z3cgz"&gt;Book review: Expert Performance Indexing for SQL Server 2012 [13 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Other Stuff Shared&lt;/h2&gt;
&lt;p&gt;Of course, no week would be complete without a few off-topic links. &amp;#xA0;These have nothing to do with technology or your career, but they sure are entertaining and interesting (and a couple are pretty gross).&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://bit.ly/15LrL4X"&gt;This Is The Most Epic Brand Meltdown On Facebook Ever [112 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/15YiQwd"&gt;9 Incredible Objects That Prove 3D Printers Are Totally Worth it [27 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/13CAfab"&gt;6 Steps To Healing Yourself [16 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/129YJFI"&gt;DDOS on the VideoLAN downloads infrastructure [14 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/13SlWhI"&gt;Thor 2 : The Dark World Trailer (2013) [12 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/13BQG7v"&gt;The worst break-up stories ever [11 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/10kuNYZ"&gt;Timelapse: Changed Over A Few Decades via Google Earth Engine [9 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/10qLeil"&gt;Michael Bay Is Why Transformers Got So Complicated [10 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bit.ly/10pxJDU"&gt;Google Expected to Start a Competitor to Spotify [0 clicks]&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Got something you think I should read and share, leave a comment below. &amp;#xA0;Also, if you want to see all of the links that were tweeted out last week? &amp;#xA0;Then &lt;a href="http://stratesql.tumblr.com/"&gt;follow the links on my tumblr blog&lt;/a&gt; or subscribe to it&amp;#x2019;s &lt;a href="http://feeds.feedburner.com/StrateSqlLinks"&gt;RSS feed&lt;/a&gt;.&lt;/p&gt;
&lt;div class="shr-publisher-4237"&gt;&lt;/div&gt;
&lt;div class="tentblogger-rss-footer"&gt;
&lt;hr&gt;
&lt;p&gt;You just finished reading &lt;a href="http://www.jasonstrate.com/?p=4237"&gt;Last Weeks Top "Reading" Links #33&lt;/a&gt;!  Consider leaving a comment!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p align="center"&gt;Keep up to date with posts via &lt;a href="http://feeds.feedburner.com/stratesql"&gt;RSS&lt;/a&gt; or on twitter at &lt;a href="http://www.twitter.com%5Cstratesql"&gt;StrateSQL&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=kjxQkvtXAKQ:0wtEVNRvsyM:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=kjxQkvtXAKQ:0wtEVNRvsyM:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=kjxQkvtXAKQ:0wtEVNRvsyM:clraHZBW0_I"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=clraHZBW0_I"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=kjxQkvtXAKQ:0wtEVNRvsyM:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?i=kjxQkvtXAKQ:0wtEVNRvsyM:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=kjxQkvtXAKQ:0wtEVNRvsyM:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/StrateSqlSyndication?a=kjxQkvtXAKQ:0wtEVNRvsyM:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/StrateSqlSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/mYsXmE1IzAQ" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 10:00:07 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/last-weeks-top-reading-links-33/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/last-weeks-top-reading-links-33/</feedburner:origLink></item><item><title>SQL Intersection Registration Open – and a $100 Off Code!</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/44WTKONLzIk/</link><description>&lt;div class="wp-caption alignright" id="attachment_19058"&gt;
&lt;a href="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Vegas-Slots.jpg"&gt;&lt;img alt="Today is your lucky day." class="size-medium wp-image-19058" height="200" src="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Vegas-Slots-266x200.jpg" width="266"&gt;&lt;/a&gt;&lt;p class="wp-caption-text"&gt;Today is your lucky day.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;How would you like to go to a SQL Server conference in Las Vegas where the sessions are taught by Brent Ozar Unlimited, SQLskills, SQLServerCentral, and SQL Sentry?&lt;/p&gt;
&lt;p&gt;Yep. Me, Jeremiah, Kendra, Kimberly Tripp, Paul Randal, Jonathan Kehayias, Erin Stellato, Steve Jones, and Aaron Bertrand. Between us, that&amp;#x2019;s 3 MCMs, 2 MCM instructors, 7 MVPs, and 2 MVP Regional Directors.&lt;/p&gt;
&lt;p&gt;If you&amp;#x2019;re serious about learning SQL Server, this should be the very first conference on your fall priority list. Check out some of &lt;a href="http://sqlintersection.com/sessions.aspx?s=118"&gt;these sessions&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;Troubleshooting SQL Servers in VMware and SANs (me)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Understanding Locking, Blocking, and Isolation Levels (Kimberly)&lt;/li&gt;
&lt;li&gt;Understanding Logging and Recovery (Paul)&lt;/li&gt;
&lt;li&gt;X-Ray Glasses for Your Indexes (Kendra)&lt;/li&gt;
&lt;li&gt;Branding Yourself for a Dream Job (Steve)&lt;/li&gt;
&lt;li&gt;Deadlocking for Mere Mortals (Jonathan)&lt;/li&gt;
&lt;li&gt;Hadoop: The Great and Powerful (Jeremiah)&lt;/li&gt;
&lt;li&gt;Making the Leap from Profiler to Extended Events (Erin)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="wp-caption alignright" id="attachment_19066"&gt;
&lt;a href="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Brent-in-Boxster.jpg"&gt;&lt;img alt="Team building in a Boxster through canyons" class="size-medium wp-image-19066" height="200" src="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Brent-in-Boxster-133x200.jpg" width="133"&gt;&lt;/a&gt;&lt;p class="wp-caption-text"&gt;Team building in a Boxster through canyons&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;How much would you pay for three days of awesome learning at a conference like this with top-notch speakers, all killer no filler?&lt;/p&gt;
&lt;p&gt;You want more sessions? You&amp;#x2019;re in luck! Your registration also includes &lt;a href="http://www.devintersection.com/sessions.aspx?s=116"&gt;ASP.NET Intersection sessions&lt;/a&gt;&amp;#xA0;and &lt;a href="http://www.devintersection.com/sessions.aspx?s=115"&gt;Visual Studio Intersection sessions&lt;/a&gt;&amp;#xA0;for developers, &lt;a href="http://www.devintersection.com/sessions.aspx?s=117"&gt;SharePoint Intersection sessions&lt;/a&gt; for sharing pointers. If your coworkers want to attend an open-source-friendly conference focusing on JavaScript and the web, the &lt;a href="http://anglebrackets.org"&gt;Angle Brackets conference&lt;/a&gt; is happening in the same hotel at the same time, so it makes for a great company getaway.&lt;/p&gt;
&lt;p&gt;And hey, it&amp;#x2019;s Vegas, so it&amp;#x2019;s a great team building city, like when Jeremiah and I rented cars last time and, uh, built teams. Yeah.&lt;/p&gt;
&lt;p&gt;But wait &amp;#x2013; there&amp;#x2019;s more! Check out &lt;a href="http://sqlintersection.com/sessions.aspx?s=118"&gt;the pre-con workshops&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;&lt;strong&gt;Accidental DBA Starter Kit (me, Jeremiah, Kendra &amp;#x2013; Pre-Con Sunday)&lt;/strong&gt; -&amp;#xA0;You&amp;#x2019;re responsible for managing SQL Servers, but you&amp;#x2019;ve never had formal training. You&amp;#x2019;re not entirely sure what&amp;#x2019;s going on inside this black box, and you need a fast education on how SQL Server works. In one day, you&amp;#x2019;ll learn how to make your SQL Server faster and more reliable. You&amp;#x2019;ll leave armed with free scripts to help you find health problems and bottlenecks, a digital set of posters that explains how SQL Server works, and an e-book that will keep your lessons moving forward over the next 6-12 months.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Queries Gone Wild: Real-World Solutions (Kimberly &amp;#x2013; Pre-Con Sunday)&lt;/strong&gt; -&amp;#xA0;Have you ever wondered why SQL Server did what it did to process your query? Have you wondered if it could have done better? And, if so, how? Transact-SQL was designed to be a declarative language that details what data you need, but without any information about how SQL Server should go about getting it. Join order, predicate analysis &amp;#x2013; how does SQL Server decide the order or when to evaluate a predicate? Most of the time SQL Server gets the data quickly but sometimes what SQL Server does just doesn&amp;#x2019;t seem to make sense. Inevitably you&amp;#x2019;ll encounter certain workloads and queries that just aren&amp;#x2019;t performing as well as you expect. There are numerous reasons why query performance can suffer and in this full-day workshop Kimberly will cover a number of critical areas while showing you how to analyze a variety of query plans throughout the day.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scale Up or Scale Out: When NOLOCK Isn&amp;#x2019;t Enough (me, Jeremiah, Kendra &amp;#x2013; Post-Con Thursday)&lt;/strong&gt; -&amp;#xA0;Partitioning, replication, caching, sharding, AlwaysOn Availability Groups, Enterprise Edition, bigger boxes, or good old NOLOCK? You need to handle more data and deliver faster queries, but the options are confusing. In this full-day workshop, Brent, Kendra, and Jeremiah will share the techniques they use to speed up SQL Server environments both by scaling up and scaling out. We&amp;#x2019;ll share what features might save you hundreds of development hours, what features have been a struggle to implement, and how you can tell the difference. This workshop is for developers and DBAs who need to plan long term changes to their environment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Practical Disaster Recovery Techniques (Paul &amp;#x2013; Post-Con Thursday)&lt;/strong&gt; -&amp;#xA0;Disasters happen &amp;#x2013; plain and simple. When disaster strikes a database you&amp;#x2019;re responsible for, can you recover within the down-time and/or data-loss limits your company requires? What if your plan doesn&amp;#x2019;t work? This workshop isn&amp;#x2019;t about how to achieve high-availability, it&amp;#x2019;s about how to prevent or overcome the obstacles you&amp;#x2019;re likely to hit when trying to recover from a disaster &amp;#x2013; such as not having the right backups, not having valid backups, or not having any backups! In this demo-heavy workshop, you&amp;#x2019;ll learn a ton of practical tips, tricks, and techniques learned from 15 years of experience helping customers plan for and recover from disasters, including less frequently seen problems and more advanced techniques. All attendees will also receive a set of lab scenarios for further study and practice after the class with assistance from Paul.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="wp-caption alignright" id="attachment_19061"&gt;
&lt;a href="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Ernie-at-Hoover-Dam.jpg"&gt;&lt;img alt="Ernie takes in Hoover Dam" class="size-medium wp-image-19061" height="200" src="http://cdn.prod.brentozar.com/wp-content/uploads/2013/05/Ernie-at-Hoover-Dam-223x200.jpg" width="223"&gt;&lt;/a&gt;&lt;p class="wp-caption-text"&gt;Ernie takes in Hoover Dam&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Now how much would you pay for all this? Three thousand? Four thousand? Ten thousand? BUT WAIT, THERE&amp;#x2019;S MORE!&lt;/p&gt;
&lt;p&gt;For $1,894 before June 24th, you can get the Show Package: the conference, PLUS a pre-con or post-con of your choice, PLUS your choice of a Surface RT, Xbox, or a $300 gift card.&lt;/p&gt;
&lt;p&gt;For $2,294, you get all that plus ANOTHER pre-con or post-con &amp;#x2013; five days of nonstop learning from the absolute best in the business.&lt;/p&gt;
&lt;p&gt;No? You want more? Okay, you drive a hard bargain, buddy. &lt;strong&gt;Use discount code OZAR and you get another $100 off.&lt;/strong&gt; &lt;a href="https://www.devintersection.com/register.aspx?s=118"&gt;Register now.&lt;/a&gt; Operators are standing by.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.devintersection.com/register.aspx?s=118"&gt;&lt;img alt="" class="alignnone size-full wp-image-17904" height="42" src="http://cdn.prod.brentozar.com/wp-content/uploads/2013/01/RegisterNow.jpg" title="RegisterNow" width="199"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;...&lt;br&gt;&lt;i&gt;Just check the boxes to see &lt;a href="https://brentozarevents.webex.com/brentozarevents/onstage/g.php?p=L8FEedipisA0NL4Sx6LCRIr0GCEjWxetdMub8XyE7SDiiipisI2rL&amp;amp;t=m"&gt;Bad DBA Job Detector, Top 3 Indexing Mistakes, and the Accidental DBA's 6 Month Training Plan.&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?a=rgLMil9oafE:u3V8cqgK_-o:D7DqB2pKExk"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?i=rgLMil9oafE:u3V8cqgK_-o:D7DqB2pKExk"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?a=rgLMil9oafE:u3V8cqgK_-o:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?i=rgLMil9oafE:u3V8cqgK_-o:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?a=rgLMil9oafE:u3V8cqgK_-o:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?i=rgLMil9oafE:u3V8cqgK_-o:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?a=rgLMil9oafE:u3V8cqgK_-o:gIN9vFwOqvQ"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/BrentOzar-SqlServerDbaSqlserverpediaSyndication?i=rgLMil9oafE:u3V8cqgK_-o:gIN9vFwOqvQ"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/44WTKONLzIk" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 08:24:55 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/sql-intersection-registration-open-and-a-100-off-code/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/sql-intersection-registration-open-and-a-100-off-code/</feedburner:origLink></item><item><title>Identifying Identity Columns Approaching Their Limit</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/dNeEdCpFntA/</link><description>&lt;p&gt;Back in &lt;a href="http://shaunjstuart.com/archive/2012/12/new-version-of-sp_blitz-with-some-contributions-from-me/"&gt;December&lt;/a&gt;, a couple of checks I wrote were included in Brent Ozar Unlimited's &lt;a href="http://www.brentozar.com/blitz/"&gt;sp_Blitz&lt;/a&gt; script. I was chagrined to see that some people discovered some bugs in my code and submitted fixes. To be fair, one was a bug in SQL 2008 &amp;amp; 2008 R2 where DBCC DBINFO WITH TABLERESULTS returned the dbccLastKnownGood entry twice. (Microsoft has said they &lt;a href="http://connect.microsoft.com/SQLServer/feedback/details/485869/dbcc-dbinfo-in-sql-server-2008-sp1-reports-the-dbi-dbcclastknowngood-info-twice"&gt;aren't going to fix this&lt;/a&gt;, unfortunately.) The other was an issue when systems were using the British date format. I guess this just goes to show how hard it is to test every possible use case to discover bugs.&lt;/p&gt;
&lt;p&gt;Even though there were only problems with one of the three tests I submitted, I still felt the need to redeem myself and submit another check. I had recently read a blog post about monitoring the values of identity columns in tables to make sure you aren't approaching the maximum value for the data type used. Surprisingly, such a check wasn't already in sp_Blitz. I felt this was something I could tackle.&lt;/p&gt;
&lt;p&gt;My first attempt worked, but it did so by cycling through all the tables in a database, finding any identity columns, and comparing the maximum value used to the maximum value the data type can accommodate (255 for TINYINT, 2147483648 for INT, etc.) I submitted this and the feedback from Brent was that he wasn't sure if this should be included because of the performance implications. Although I tested the code on all my servers without issue, Brent mentioned that some databases, especially those for SAP, may have 10,000 to 50,000 tables. Running code to look at each of those tables could have a severe impact on performance or, at the very least, greatly increase the time it took the script to complete. That's a valid point (and again goes to show how hard it is to test for all use cases). Apparently, he spoke to Kendra Little about this and she brought up a system table that both Brent and I didn't know about (or more likely, knew about, but forgot): &lt;a href="http://msdn.microsoft.com/en-us/library/ms187334%28v=sql.110%29.aspx"&gt;sys.identity_columns&lt;/a&gt;. Using that, I can get the same information by querying one system table instead of each individual user table in the database.&lt;/p&gt;
&lt;p&gt;So I re-wrote my script to use that and re-submitted it to sp_Blitz. It's in the queue for evaluation, so I don't know when (or if) it will be included, but I thought I post the test here. (And of course, once I had the name of this table, I discovered a Google search returns lots of scripts that provide the same functionality.)&lt;/p&gt;
&lt;p&gt;A quick note: The script assumes the identity increment is positive and the identity values are positive. The script will issue a warning when the maximum value is more than 90% of the maximum value of the data type used.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;
  DECLARE @SchemaName sysname
  DECLARE @TableName sysname
  DECLARE @ColumnName sysname

  DECLARE @Name sysname
  DECLARE DBNameCursor CURSOR
  FOR
          SELECT    name
          FROM      sys.databases
          WHERE     source_database_id IS NULL	/* no database snapshots */
                    AND is_read_only = 0		/* no read-only dbs (log shipping) */
                    AND database_id &amp;lt;&amp;gt; 2		/* skip tempdb */
                    AND state = 0	/* online databases */
          ORDER BY  name;

  CREATE TABLE #IdentityCheck
         (
          PK INT IDENTITY(1, 1)
         ,DatabaseName sysname
         ,SchemaName sysname
         ,TableName sysname
         ,ColumnName sysname
         ,ColumnType VARCHAR(8)
         ,MaxValue BIGINT
         )

  OPEN DBNameCursor
  FETCH NEXT FROM DBNameCursor INTO @Name
  WHILE @@fetch_status = 0
        BEGIN

              EXEC('USE [' + @Name + '];  INSERT  INTO #IdentityCheck
              SELECT ''' + @Name + ''' as DatabaseName
              ,SCHEMA_NAME(o.SCHEMA_ID) AS SchemaName
              ,OBJECT_NAME(o.OBJECT_ID) AS TableName
              ,c.[name] AS ColumnName
              ,t.name AS ColumnType
              ,CAST(last_value AS bigint) AS MaxValue
              FROM    sys.identity_columns c
              ,sys.types t
              ,sys.objects o
              WHERE   c.is_identity = 1
              AND t.system_type_id = c.system_type_id
              AND o.object_id = c.object_id
              AND o.type = ''u''
              AND t.is_user_defined = 0 /* only look at system defined types */
              AND t.name IN (''int'', ''bigint'', ''smallint'', ''tinyint'')')
              FETCH NEXT FROM DBNameCursor INTO @Name
        END

  CLOSE DBNameCursor
  DEALLOCATE DBNameCursor

  SELECT    'Table [' + SchemaName + '].[' + TableName + '], column ['
            + ColumnName + '] in database [' + DatabaseName
            + '] is an identity column that has reached over 90% of the maximum value for that datatype.' AS Details
           ,'' AS ChangeRequirements
  FROM      #IdentityCheck
  WHERE     1 = CASE WHEN ColumnType = 'bigint'
                          AND (CONVERT(DECIMAL(19, 0), MaxValue)
                               / 9223372036854775807.0) &amp;gt; .90 THEN 1
                     WHEN ColumnType = 'int'
                          AND (CONVERT(DECIMAL(10, 0), MaxValue)
                               / 2147483648.0) &amp;gt; .90 THEN 1
                     WHEN ColumnType = 'smallint'
                          AND (CONVERT(DECIMAL(5, 0), MaxValue) / 32767.0) &amp;gt; .90
                     THEN 1
                     WHEN ColumnType = 'tinyint'
                          AND (CONVERT(DECIMAL(3, 0), MaxValue) / 255.0) &amp;gt; .90
                     THEN 1
                END

  DROP TABLE #IdentityCheck

&lt;/pre&gt;
&lt;p&gt;So what do you do if you get this warning? Well, a quick fix that Michelle Ufford &lt;a href="http://sqlfool.com/2011/01/identity-columns-are-you-nearing-the-limits/"&gt;suggested&lt;/a&gt;, is to reseed your identity value to the lowest negative value the data type supports. For example, if your identity column is an integer, reseed the column to start at -2147483648 and increment by a positive number. (This assumes you started your initial identity value at zero and used a positive increment to begin with.)&lt;/p&gt;
&lt;p&gt;One more note: you'll notice my script uses a cursor to cycle through the databases while many other scripts you find on the internet use ms_foreachdb. Either method works. I prefer the cursor because it's 100% supported. (For the cursors-give-sucky-performance crowd, the undocumented command &lt;a href="http://shaunjstuart.com/archive/2012/10/its-time-to-retire-sp_msforeachdb/"&gt;uses a cursor&lt;/a&gt; behind the scenes anyway, so that's a moot point.) Ms_foreachdb is an unsupported command and can change at any time. There is also evidence that it can &lt;a href="http://sqlblog.com/blogs/aaron_bertrand/archive/2010/02/08/bad-habits-to-kick-relying-on-undocumented-behavior.aspx"&gt;skip some databases&lt;/a&gt; and even &lt;a href="http://blamblogger.blogspot.com/2011/11/dbcc-loginfo-on-sql-2005-causes-non.html"&gt;completely lock up&lt;/a&gt; SQL 2005 servers in some situations. Given the issue I ran into above with the DBCC DBINFO command, which is also an unsupported command, and Microsoft's statement that they are not going to fix it, I am committed to not using any undocumented commands in any scripts I pan to re-use. I'll use them for any one-off work I might be doing, but for something that I want to save and re-use as part of my SQL toolkit, I will pass.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="a2a_button_google_plusone addtoany_special_service"&gt;&lt;/a&gt;&lt;a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshaunjstuart.com%2Farchive%2F2013%2F05%2Fidentifying-identity-columns-approaching-their-limit%2F&amp;amp;title=Identifying%20Identity%20Columns%20Approaching%20Their%20Limit" id="wpa2a_2"&gt;&lt;img alt="Share" height="16" src="http://shaunjstuart.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:3QFJfmc7Om4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?i=tiI2pSk-tdg:lHOi-4AzOAM:3QFJfmc7Om4"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?i=tiI2pSk-tdg:lHOi-4AzOAM:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?i=tiI2pSk-tdg:lHOi-4AzOAM:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:-BTjWOF_DHI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?i=tiI2pSk-tdg:lHOi-4AzOAM:-BTjWOF_DHI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?a=tiI2pSk-tdg:lHOi-4AzOAM:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/ShaunJStuartSqlserverpediaSyndication?d=qj6IDK7rITs"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/ShaunJStuartSqlserverpediaSyndication/~4/tiI2pSk-tdg" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/dNeEdCpFntA" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 08:00:56 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/identifying-identity-columns-approaching-their-limit/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/identifying-identity-columns-approaching-their-limit/</feedburner:origLink></item><item><title>Per Member Per Month Per 1000 Calculations in MDX</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/NYgC956EFf0/</link><description>&lt;p&gt;In a lot of industries there is a popular calculation called &amp;#x201C;Per Member Per Month Per 1000&amp;#x201D; calculation or the &amp;#x201C;Per Customer Per Month Per 1000&amp;#x201D; calculation. This is used to determine the level at which the company is rendering services compared to the number of company customers. This calculation is sometimes called the 1000pmpm calculation for short.
&lt;/p&gt;
&lt;p&gt;In this article you will be looking at the member count numbers at no lower than the month level. Here is an example of the 1000pmpm calculation. If you are looking at the year level the number of months would be 12 so it would be 12 divided by 12 which is 1. So it can be removed from the calculation at the year level. This will be important later on.
&lt;/p&gt;
&lt;p&gt;[Auth Count] x ((12 / [number of months]) x 1000) / [Member Count]
&lt;/p&gt;
&lt;p&gt;In this example you will be looking at a health care company. The main number the company wants to look at is the number of authorizations per 1000 members. The data warehouse has a fact table with all of the authorizations. There is also another fact table with the member count on it also. The Fact Authorization table also has three date columns, Admit date, Discharge Date, and Date Received. This will be important when calculating the numbers at different levels of the date Hierarchy. The Fact table also has many other dimension surrogate keys mapped to the appropriate dimensions.
&lt;/p&gt;
&lt;p&gt;The Fact Membership table has a date on it named incurred date. This date will have a relationship to all three dates on the fact authorization table. The reason for this multiple date relationships is due to the users wanting to see the differences in discharge and admit numbers.
&lt;/p&gt;
&lt;p&gt;There are several other dimensions mapped to each fact table. In this example you will ignore all other dimensions except the date dimensions. But keep in mind those other dimensions need to have relationships set up to be able to slice the numbers by those dimensions.
&lt;/p&gt;
&lt;p&gt;Here is an example of part of the membership fact table. Notice that the incurred date repeats. This is because it depends on which dimensions you slice on which member count you will get. This also needs to be summed up to the month level. After the month level it is no longer valid as a sum. This seems tricky but can be done with a calculation. The original member count measure is set to sum on the measure properties. This measure is set to hidden also because the sum is invalid over the month level.
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mikedavissql.files.wordpress.com/2013/05/clip_image001.png"&gt;&lt;img alt="clip_image001" border="0" height="247" src="http://mikedavissql.files.wordpress.com/2013/05/clip_image001_thumb.png?w=398&amp;amp;h=247" title="clip_image001" width="398"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;To fix the summing issue you will need to create a calculation to divide up the member count by the number of month. Here is that calculation:
&lt;/p&gt;
&lt;p&gt;[Member Count]:
&lt;/p&gt;
&lt;p&gt;Case
&lt;/p&gt;
&lt;p&gt;When [Date Received].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Date Received].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 12
&lt;/p&gt;
&lt;p&gt;When [Date Received].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Date Received].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 3
&lt;/p&gt;
&lt;p&gt;When [Admit Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Admit Date].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 12
&lt;/p&gt;
&lt;p&gt;When [Admit Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Admit Date].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 3
&lt;/p&gt;
&lt;p&gt;When [Discharge Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Discharge Date].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 12
&lt;/p&gt;
&lt;p&gt;When [Discharge Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Discharge Date].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Measures].[Members] / 3
&lt;/p&gt;
&lt;p&gt;Else
&lt;/p&gt;
&lt;p&gt;[Measures].[Members]
&lt;/p&gt;
&lt;p&gt;End
&lt;/p&gt;
&lt;p&gt;In this calculation you can see the case statement is just dividing the member count by 12 at the year level and 3 at the quarter level. The member count is not valid below the month level so this takes care of all the possibilities. You will also notice that the calculation includes all three of the date hierarchies. This ensures the calculation works in all date dimensions. This can be shown on the reports and will show the correct member count for every level in all the date dimensions. The below image is of the member numbers with just the summation and the other after the above calculation. By dividing with the number of months we get the average instead of the sum at the quarter and year level, which is what we want.
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mikedavissql.files.wordpress.com/2013/05/clip_image002.png"&gt;&lt;img alt="clip_image002" border="0" height="321" src="http://mikedavissql.files.wordpress.com/2013/05/clip_image002_thumb.png?w=411&amp;amp;h=321" title="clip_image002" width="411"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;The next calculation is just to divide the member count by 1000. This can also be shown on the reports at all date levels.
&lt;/p&gt;
&lt;p&gt;[Member Count / 1000]:
&lt;/p&gt;
&lt;p&gt;iif([Measures].[Member Count] &amp;lt;= 0,
&lt;/p&gt;
&lt;p&gt;null,
&lt;/p&gt;
&lt;p&gt;[Measures].[Member Count] / 1000)
&lt;/p&gt;
&lt;p&gt;The last calculation we need to do to the member count is used in the actual calculations where you divide the measures by the member count. In this example you will use the Authorization count. But instead of multiplying every measure by a number then dividing by the member count, you can do a little math and figure out that you just divide the member count number and then use this one number for all measures.
&lt;/p&gt;
&lt;p&gt;[MemberCount / 1000 for Calcs]:
&lt;/p&gt;
&lt;p&gt;Case
&lt;/p&gt;
&lt;p&gt;When IsEmpty([Member Count / 1000])
&lt;/p&gt;
&lt;p&gt;Then Null
&lt;/p&gt;
&lt;p&gt;When [Date Received].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Date Received].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000]
&lt;/p&gt;
&lt;p&gt;When [Date Received].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Date Received].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000] / 4
&lt;/p&gt;
&lt;p&gt;When [Admit Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Admit Date].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000]
&lt;/p&gt;
&lt;p&gt;When [Admit Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Admit Date].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000] / 4
&lt;/p&gt;
&lt;p&gt;When [Discharge Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Discharge Date].[Date Hierarchy].[Year]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000]
&lt;/p&gt;
&lt;p&gt;When [Discharge Date].[Date Hierarchy].currentmember.level is
&lt;/p&gt;
&lt;p&gt;[Discharge Date].[Date Hierarchy].[Quarter]
&lt;/p&gt;
&lt;p&gt;Then [Member Count / 1000] / 4
&lt;/p&gt;
&lt;p&gt;Else
&lt;/p&gt;
&lt;p&gt;[Member Count / 1000] /12
&lt;/p&gt;
&lt;p&gt;End
&lt;/p&gt;
&lt;p&gt;This last calculation may be confusing. To help clarify this, take a look at the 1000pmpm calculation again:
&lt;/p&gt;
&lt;p&gt;[Auth Count] x ((12 / [number of months]) x 1000) / [Member Count]
&lt;/p&gt;
&lt;p&gt;What you are basically doing is moving the ((12 / [number of months]) to the bottom of the calculation and dividing the member number by this answer. This ensures the company can compare the number across any level. So the quarter level should be very close to the month and year level. The last calculation makes sure this happens by dividing member count by the number of quarters in a year at the quarter level. At the year level it would be 12 divided by 12, which equals 1 so no division is needed. That final else is used to get all the months.
&lt;/p&gt;
&lt;p&gt;Now you can use this final calculation to divide all the measures in the cube. The below calculation can be applied to all measures. This calculation is checking for divided by zero errors then just dividing the measure by the member number we have worked hard to get above.
&lt;/p&gt;
&lt;p&gt;iif([Measures].[Member Count / 1000] &amp;lt;=0,
&lt;/p&gt;
&lt;p&gt;Null,
&lt;/p&gt;
&lt;p&gt;[Measures].[Auth Count] / [MemberCount / 1000 for Calcs])
&lt;/p&gt;
&lt;p&gt;Here you can see the final results:
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mikedavissql.files.wordpress.com/2013/05/clip_image003.png"&gt;&lt;img alt="clip_image003" border="0" height="188" src="http://mikedavissql.files.wordpress.com/2013/05/clip_image003_thumb.png?w=433&amp;amp;h=188" title="clip_image003" width="433"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;By using this method you can use this final member count number easily and save lots of unnecessary work. If you try to calculate each measure separately all of the calculations would have been massive.&lt;/p&gt;
&lt;br&gt;&lt;a href="http://feeds.wordpress.com/1.0/gocomments/mikedavissql.wordpress.com/464/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mikedavissql.wordpress.com/464/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=mikedavissql.com&amp;amp;blog=25883522&amp;amp;post=464&amp;amp;subd=mikedavissql&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/NYgC956EFf0" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 07:00:00 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/per-member-per-month-per-1000-calculations-in-mdx/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/per-member-per-month-per-1000-calculations-in-mdx/</feedburner:origLink></item><item><title>SQL Server – Show/Hide Results Pane in Management Studio 2012</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/W1kWtnnPqUc/</link><description>&lt;p&gt;In earlier version of SQL Server Management Studio (2005, 2008 and 2008 R2) you can show/hide results pane using keyboard shortcut &lt;strong&gt;Ctrl+R&lt;/strong&gt;. This shortcut was also present in Query Analyzer (SQL Server 2000).&lt;/p&gt;
&lt;p&gt;This shortcut is no longer available in SQL Server Management Studio 2012. In this version you need to use &lt;strong&gt;Ctrl+Shift+Alt+R&lt;/strong&gt; to show/hide query results pane. Another alternative shortcuts you can use to show or hide results pane is &lt;strong&gt;&lt;u&gt;Alt+WS&lt;/u&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;u&gt;Alt+WI&lt;/u&gt; &lt;/strong&gt;respectively. I find the later to be more easy to use.&lt;/p&gt;
&lt;p&gt;If you have gotten used to using old shortcut &lt;strong&gt;Ctrl+R&lt;/strong&gt; you can customize shortcuts in SQL Server Management Studio.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;To change keyboard shortcut for show/hide results pane:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 1:&lt;/u&gt; &lt;/strong&gt;Go to &lt;strong&gt;Tools &lt;/strong&gt;&amp;gt; &lt;strong&gt;Options &lt;/strong&gt;in SQL Server Management Studio:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlandme.files.wordpress.com/2013/03/image.png"&gt;&lt;img alt="image" border="0" height="245" src="http://sqlandme.files.wordpress.com/2013/03/image_thumb.png?w=341&amp;amp;h=245" title="image" width="341"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 2:&lt;/u&gt;&lt;/strong&gt; Navigate to &lt;strong&gt;Environment&lt;/strong&gt; &amp;gt; &lt;strong&gt;Keyboard&lt;/strong&gt; &amp;gt; &lt;strong&gt;Keyboard&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlandme.files.wordpress.com/2013/03/image1.png"&gt;&lt;img alt="image" border="0" height="354" src="http://sqlandme.files.wordpress.com/2013/03/image_thumb1.png?w=604&amp;amp;h=354" title="image" width="604"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 3:&lt;/u&gt;&lt;/strong&gt; Search for &lt;strong&gt;Window.ShowResultsPane&lt;/strong&gt; using &lt;strong&gt;Show commands containing:&lt;/strong&gt; textbox.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlandme.files.wordpress.com/2013/03/image2.png"&gt;&lt;img alt="image" border="0" height="354" src="http://sqlandme.files.wordpress.com/2013/03/image_thumb2.png?w=604&amp;amp;h=354" title="image" width="604"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 4:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;(1) Select &lt;strong&gt;Ctrl+Shift+Alt+R (SQL Query Editor)&lt;/strong&gt; in &lt;strong&gt;Shortcuts for selected command:&lt;/strong&gt; list.&lt;br&gt;(2) Select &lt;strong&gt;SQL Query Editor&lt;/strong&gt; in &lt;strong&gt;Use new shortcut in:&lt;/strong&gt; list.&lt;br&gt;(3) Go to &lt;strong&gt;Press shortcut keys:&lt;/strong&gt; textbox and press &lt;strong&gt;Ctrl+R&lt;/strong&gt; or any other shortcut you need.&lt;br&gt;(4) Click on &lt;strong&gt;Assign&lt;/strong&gt;.&lt;br&gt;(5) Click on &lt;strong&gt;OK&lt;/strong&gt; to apply changes.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sqlandme.files.wordpress.com/2013/03/image3.png"&gt;&lt;img alt="image" border="0" height="354" src="http://sqlandme.files.wordpress.com/2013/03/image_thumb3.png?w=604&amp;amp;h=354" title="image" width="604"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 5:&lt;/u&gt;&lt;/strong&gt; You need to restart SQL Server Management Studio to apply these changes.&lt;/p&gt;
&lt;p&gt;&amp;#xA0;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Note: &lt;/u&gt;&lt;/strong&gt;The &lt;strong&gt;Window&lt;/strong&gt; menu will still show &lt;strong&gt;Ctrl+Shift+Alt+R&lt;/strong&gt; as shortcut we have only added an additional shortcut, we have not removed existing shortcut. &lt;/p&gt;
&lt;p&gt;Hope This Helps!&lt;/p&gt;
&lt;p&gt;Vishal&lt;/p&gt;
&lt;p&gt;If you like this post, do like my Facebook Page -&amp;gt; &lt;a href="http://www.facebook.com/SqlAndMe"&gt;&lt;strong&gt;SqlAndMe&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;EMail me your questions -&amp;gt; &lt;a href="mailto:Vishal@SqlAndMe.com"&gt;&lt;strong&gt;Vishal@SqlAndMe.com&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;Follow me on Twitter -&amp;gt; &lt;a href="http://bit.ly/pMqM07"&gt;&lt;strong&gt;@SqlAndMe&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br&gt;Filed under: &lt;a href="http://sqlandme.com/category/management-studio/"&gt;Management Studio&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sql-configuration/"&gt;SQL Configuration&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sqlserver/"&gt;SQLServer&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sqlserver/sqlserver-2005/"&gt;SQLServer 2005&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sqlserver/sqlserver-2008/"&gt;SQLServer 2008&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sqlserver/sqlserver-2008-r2/"&gt;SQLServer 2008 R2&lt;/a&gt;, &lt;a href="http://sqlandme.com/category/sqlserver/sqlserver-2012/"&gt;SQLServer 2012&lt;/a&gt;  &lt;a href="http://feeds.wordpress.com/1.0/gocomments/sqlandme.wordpress.com/1702/" rel="nofollow"&gt;&lt;img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlandme.wordpress.com/1702/"&gt;&lt;/a&gt; &lt;img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=sqlandme.com&amp;amp;blog=21789587&amp;amp;post=1702&amp;amp;subd=sqlandme&amp;amp;ref=&amp;amp;feed=1" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/W1kWtnnPqUc" height="1" width="1"/&gt;</description><pubDate>Mon, 20 May 2013 06:15:22 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/sql-server-showhide-results-pane-in-management-studio-2012/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/sql-server-showhide-results-pane-in-management-studio-2012/</feedburner:origLink></item><item><title>What Operation Type Invoked a Trigger?</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/zEkYPs0AFmw/</link><description>&lt;p&gt;This was a question brought to my attention and I didn&amp;#x2019;t have an answer. After searching, I realized that there is no direct function for it. Hence I came up with following solution.&lt;/p&gt; &lt;p&gt;I used inserted and deleted virtual tables. &lt;/p&gt; &lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top" width="83"&gt; &lt;p&gt;&lt;b&gt;Statement&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="143"&gt; &lt;p&gt;&lt;b&gt;inserted&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="134"&gt; &lt;p&gt;&lt;b&gt;deleted&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td valign="top" width="83"&gt; &lt;p&gt;INSERT&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="143"&gt; &lt;p&gt;rows just inserted&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="134"&gt;&amp;#xA0;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td valign="top" width="83"&gt; &lt;p&gt;DELETE&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="143"&gt;&amp;#xA0;&lt;/td&gt; &lt;td valign="top" width="134"&gt; &lt;p&gt;rows just deleted&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td valign="top" width="83"&gt; &lt;p&gt;UPDATE&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="143"&gt; &lt;p&gt;modified row contents&lt;/p&gt;
&lt;/td&gt; &lt;td valign="top" width="134"&gt; &lt;p&gt;original row contents&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;With the above cases, I came up with following trigger.&lt;/p&gt;
&lt;pre class="brush:tsql"&gt;CREATE TRIGGER trg_data_ins_del_upd
ON Data
FOR INSERT,DELETE,UPDATE
AS
BEGIN
    DECLARE @ins int ,@del int

    SELECT @ins = Count (*) From inserted
SELECT @del = Count (*) From deleted
IF @ins &amp;gt; 0 AND @del &amp;gt; 0 
INSERT INTO Operation  (Operation)  VALUES  ('Update')
ELSE IF @ins &amp;gt; 0 
INSERT INTO Operation  (Operation)  VALUES  ('Insert')
ELSE IF @del &amp;gt; 0 
INSERT INTO Operation  (Operation)  VALUES  ('Delete')
END
&lt;/pre&gt;
&lt;br&gt;&lt;p&gt;However, I feel in the above case, you better of having three separate triggers than loading everything to one trigger.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;http://dbfriend.blogspot.com/feeds/posts/default?alt=rss&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/zEkYPs0AFmw" height="1" width="1"/&gt;</description><pubDate>Sun, 19 May 2013 12:44:58 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/what-operation-type-invoked-a-trigger/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/what-operation-type-invoked-a-trigger/</feedburner:origLink></item><item><title>How to: Configure SQL Server 2012 AlwaysOn – Part 6 of 7</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/_id5Kunjzlc/</link><description>&lt;h1&gt;How to: Configure SQL Server 2012 AlwaysOn&lt;/h1&gt;
&lt;h1&gt;How to: Fail-over&lt;/h1&gt;
&lt;p&gt;In this part of the blog series we will go over the various methods of manually failing over an Availability Group. Naturally if you are using automatic fail-over then there are no steps required for this to happen in an&amp;#xA0;emergency&amp;#xA0;but you might find a reason to conduct a planned manual fail-over when there is no actual problem (for example, fail-over testing).&lt;/p&gt;
&lt;h1&gt;What Happens During a Fail-over&lt;/h1&gt;
&lt;h3&gt;Database Component:&lt;/h3&gt;
&lt;p&gt;A fail-over occurs by sending what amounts to a &amp;#x201C;make primary&amp;#x201D; command to a secondary replica. This happens because, of course, the primary database might not be available to receive commands.&lt;/p&gt;
&lt;p&gt;Once the command to make primary comes through, the database will become transactional (in a read/write mode) and begin accepting connections of all types. If you were using synchronous commit then there will be no data loss and this new primary replica will begin stock piling transactions in the transaction log until the previous primary comes back online to receive the transactions or data transfer is manually severed. When the primary replica comes online there are no user actions required to resume the data transfer but a fail-back would require user interaction if it was desired.&lt;/p&gt;
&lt;p&gt;If you are using asynchronous commit (like we are in our architecture) then the secondary replica will come back online but the data transfer will be paused. At this time you can use the database as a read-only replica to identify what data loss occurred or you can resume transfer. By resuming the transfer you lose the ability to identify what data might have been lost during the fail-over.&lt;/p&gt;
&lt;h3&gt;Cluster resource / AG listener&lt;/h3&gt;
&lt;p&gt;At the same time that the database component is failing over the cluster resource is also working on its fail-over.&lt;/p&gt;
&lt;p&gt;Which ever secondary replica is becoming the new primary now needs to run the cluster resource for the Availability Group. The most important part of this fail-over is the AG listener. When crossing within the same sub-net the move causes a momentary outage of the IP address associated to the listener (no longer than the outage&amp;#xA0;incurred&amp;#xA0;by the database fail-over). If the resource is moving to a node where the listener must change sub-nets it will take the former sub-net IP offline and bring online the new sub-net&amp;#x2019;s IP address.&lt;/p&gt;
&lt;h1&gt;Availability Group Fail-over Wizard&lt;/h1&gt;
&lt;p&gt;The availability group fail-over wizard can be run from either the primary or secondary replica but you will have to be able to connect to the secondary replica in order to be successful.&lt;/p&gt;
&lt;h2&gt;There are two ways to access the fail-over wizard:&lt;/h2&gt;
&lt;h3&gt;Availability group dashboard&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Dashboard.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Dashboard" class="aligncenter size-full wp-image-378" height="145" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Dashboard.jpg" width="826"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The&amp;#xA0;&lt;em&gt;&lt;strong&gt;Start Failover Wizard&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;link is available from both the primary and secondary replica dashboards.&lt;/p&gt;
&lt;h3&gt;SSMS Object explorer&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Object-Explorer.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Object-Explorer" class="aligncenter size-full wp-image-379" height="264" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Object-Explorer.jpg" width="410"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To access the fail-over wizard from the Object Explorer; right click on the availability group and select&amp;#xA0;&lt;em&gt;&lt;strong&gt;Failover&amp;#x2026;&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;Wizard Walk-through&lt;/h2&gt;
&lt;p&gt;Upon opening the availability group fail-over wizard for the first time you will meet the&amp;#xA0;&lt;em&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;page. If you&amp;#x2019;d like, check the&amp;#xA0;&lt;em&gt;&lt;strong&gt;Do not show this page again&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;then&amp;#xA0;click&amp;#xA0;&lt;em&gt;&lt;strong&gt;Next.&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&lt;br&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-1.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-1" class="aligncenter size-full wp-image-382" height="680" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-1.jpg" width="769"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On the&amp;#xA0;&lt;em&gt;&lt;strong&gt;Select New Primary Replica&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;page you will see a list of all available replicas with some status information. I find the most important column of this page to be the&amp;#xA0;&lt;em&gt;&lt;strong&gt;Failover Readiness&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;column which will let you know whether you will have data loss by choosing this replica for fail-over.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;NOTE: The Failover Readiness column is indicating data loss based on configuration not based on an actual representation of what has been synchronized. If you created a database inserted one record, verified that the secondary has the record, and then ran this wizard you would see that data loss is listed for asynchronous connections. It does not matter that there will actually not be any data loss in this situation.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-2.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-2" class="aligncenter size-full wp-image-383" height="682" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-2.jpg" width="770"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once you have selected your replica to fail-over to; click&amp;#xA0;&lt;em&gt;&lt;strong&gt;Next.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-3.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-3" class="aligncenter size-full wp-image-384" height="678" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-3.jpg" width="769"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The &lt;em&gt;&lt;strong&gt;Summary&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;page will provide a list of the actions and affected components. This is where you can script out the process or go ahead and click&amp;#xA0;&lt;em&gt;&lt;strong&gt;Finish.&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-4.jpg"&gt;&lt;img alt="How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-4" class="aligncenter size-full wp-image-385" height="679" src="http://www.sqlhammer.com/blog/wp-content/uploads/2013/05/How-to-Configure-SQL-Server-2012-AlwaysOn-Part-5-of-7-Fail-over-Page-Failover-Wizard-4.jpg" width="771"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Finally, you reach the&amp;#xA0;&lt;em&gt;&lt;strong&gt;Results&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;#xA0;&lt;/strong&gt;page and you are complete.&lt;/p&gt;
&lt;h1&gt;T-SQL Fail-over&lt;/h1&gt;
&lt;p&gt;Microsoft did a really great job at keeping the fail-over scripts simple for moving an Availability Group.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;These commands must be run on the secondary replica that you wish to become the primary replica.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;When no data will be lost by the fail-over&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;ALTER AVAILABILITY GROUP [AG_SQLTest] FAILOVER;&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;When no data will be lost by the fail-over&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;ALTER AVAILABILITY GROUP [AG_SQLTest] FORCE_FAILOVER_ALLOW_DATA_LOSS;&lt;/code&gt;&lt;/p&gt;
&lt;h1&gt;Wrap-up:&lt;/h1&gt;
&lt;p&gt;It is easy to see that both the Availability Group Fail-over Wizard and the T-SQL methods are both very straight forward and easy to use. That is one characteristic of AlwaysOn that is very appealing, especially to junior DBAs.&lt;/p&gt;
&lt;p&gt;Follow the links below to move on through this tutorial.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/04/01/how-to-configure-sql-server-2012-alwayson-part-1-of-7" title="Scope and Architecture"&gt;Scope and Architecture&amp;#xA0;- Part 1 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/04/01/how-to-configure-sql-server-2012-alwayson-part-2-of-7"&gt;Building the Environment &amp;#x2013; Part 2 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/04/01/how-to-configure-sql-server-2012-alwayson-part-3-of-7"&gt;Configuring AlwaysOn &amp;#x2013; Part 3 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/05/01/how-to-configure-sql-server-2012-alwayson-part-4-of-7/"&gt;Building Availability Groups &amp;#x2013; Part 4 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/05/15/how-to-configure-sql-server-2012-alwayson-part-5-of-7/"&gt;Explanation of Implicitly Created Components &amp;#x2013; Part 5 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sqlhammer.com/blog/2013/05/16/how-to-configure-sql-server-2012-alwayson-part-6-of-7/"&gt;How to: Fail-Over &amp;#x2013; Part 6 of 7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The Availability Group Listener &amp;#x2013; Part 7 of 7&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SqlHammer?a=SGcbNz48G6w:3Utar-dZLE0:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlHammer?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlHammer?a=SGcbNz48G6w:3Utar-dZLE0:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlHammer?i=SGcbNz48G6w:3Utar-dZLE0:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlHammer?a=SGcbNz48G6w:3Utar-dZLE0:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlHammer?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlHammer?a=SGcbNz48G6w:3Utar-dZLE0:gIN9vFwOqvQ"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlHammer?i=SGcbNz48G6w:3Utar-dZLE0:gIN9vFwOqvQ"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SqlHammer?a=SGcbNz48G6w:3Utar-dZLE0:3QFJfmc7Om4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/SqlHammer?i=SGcbNz48G6w:3Utar-dZLE0:3QFJfmc7Om4"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/SqlHammer/~4/SGcbNz48G6w" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/_id5Kunjzlc" height="1" width="1"/&gt;</description><pubDate>Thu, 16 May 2013 15:19:25 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/how-to-configure-sql-server-2012-alwayson-part-6-of-7/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/how-to-configure-sql-server-2012-alwayson-part-6-of-7/</feedburner:origLink></item><item><title>When the person you hire is not the person you hire</title><link>http://feedproxy.google.com/~r/sqlserverpedia/~3/L44LXS4I5ys/</link><description>&lt;p&gt;This is something I just heard about recently, but then experienced it for myself.&lt;/p&gt;
&lt;p&gt;This story was told to me: A client is looking for a contractor and contacts a staffing firm to find candidates.&amp;#xA0; The staffing firms sends a resume that looks real good.&amp;#xA0; A technical interview is done via the phone, the candidate really knows his stuff and nails the interview, and&amp;#xA0;he is hired.&amp;#xA0; A few weeks later the new hire arrives and begins work.&amp;#xA0; But something does not seem right.&amp;#xA0; The contractor does not seem to be that sharp, nothing like he was during the interview.&amp;#xA0; His coding skills are not that good.&amp;#xA0; After a few weeks, the client does some digging, and it is discovered this person is not the person who did the interview!&lt;/p&gt;
&lt;p&gt;It&amp;#x2019;s called the &amp;#x201C;bait and switch&amp;#x201D;, and the hope is the client remains unaware it is a different person.&amp;#xA0; I&amp;#x2019;m guessing sometimes they get away with this switch, but you can imagine how upset the client is when they find out they have been tricked.&amp;#xA0; It seems the staffing firm is tricked also.&amp;#xA0;This happened twice, and both cases involved&amp;#xA0;sponsored&amp;#xA0;candidates from India. &amp;#xA0;In one of the cases there was a group of seven who all lived together and one of them was really sharp (the &amp;#x201C;ring leader&amp;#x201D;) and would do all the interviews for the other six, who were junior-level. &amp;#xA0;The resumes had the real name of the person but the experience was the ring leaders. &amp;#xA0;Also, when the junior programmers were placed at a client the ring-leader would help out the junior programmers if they were struggling on the project they were on. &amp;#xA0;And the client was none the wiser.&lt;/p&gt;
&lt;p&gt;This then&amp;#xA0;happened&amp;#xA0;to me, and shows the extent some people will go to trick the client. &amp;#xA0;The client I&amp;#xA0;was at&amp;#xA0;did a phone interview on a candidate that I participated in. &amp;#xA0;The candidate did very well in the phone interview. &amp;#xA0;Since the client had experienced the same bait-and-switch as above, the next step in the interview process is a required a face-to-face meeting. &amp;#xA0;So they did a video interview on Skype, were we used Skype for the video and used a land-line for the voice. &amp;#xA0;Once again the candidate did very well but&amp;#x2026;.it turns out, we were talking to a different person on the land-line than who was on the video!&amp;#xA0; We got suspicious when we saw how the video and voice were so out of sync, and doing some more digging turned up they were in fact different people. &amp;#xA0;The guy on the video was pretending to be the guy talking on the land-line. &amp;#xA0;Crazy!&lt;/p&gt;
&lt;p&gt;I asked my recruiter friend about this, and he replied:&lt;/p&gt;
&lt;p&gt;I saw it happen more often earlier in my career, not so much now (but it still does happen on rare occasions).&amp;#xA0; Detroit in particular had a ton of foreign national firms set up show here in the 90&amp;#x2019;s and when this &amp;#x201C;bait &amp;amp; switch&amp;#x201D; became a trend, the Big 3 put an end to it.&amp;#xA0; They&amp;#x2019;d make candidates give some form of ID (SS# or some other identifier).&amp;#xA0; There would also be harsh penalties such as removal from the vendor blanket for firms that repeatedly used this tactic. &amp;#xA0;The bait &amp;amp; switch is a rookie move. &amp;#xA0;The staffing world can be a greasy business &amp;#x2013; unfortunately nothing really surprises me these days.&lt;/p&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:yIl2AUoC8zA"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=yIl2AUoC8zA"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:D7DqB2pKExk"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=loaxo-PqG0c:lX4_Efz8usU:D7DqB2pKExk"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:F7zBnMyn0Lo"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=loaxo-PqG0c:lX4_Efz8usU:F7zBnMyn0Lo"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:V_sGLiPBpWU"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=loaxo-PqG0c:lX4_Efz8usU:V_sGLiPBpWU"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:qj6IDK7rITs"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=qj6IDK7rITs"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:3QFJfmc7Om4"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=loaxo-PqG0c:lX4_Efz8usU:3QFJfmc7Om4"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:I9og5sOYxJI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?d=I9og5sOYxJI"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?a=loaxo-PqG0c:lX4_Efz8usU:-BTjWOF_DHI"&gt;&lt;img border="0" src="http://feeds.feedburner.com/~ff/JamesSerraSSPedia?i=loaxo-PqG0c:lX4_Efz8usU:-BTjWOF_DHI"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;img height="1" src="http://feeds.feedburner.com/~r/JamesSerraSSPedia/~4/loaxo-PqG0c" width="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/sqlserverpedia/~4/L44LXS4I5ys" height="1" width="1"/&gt;</description><pubDate>Thu, 16 May 2013 10:00:26 -0500</pubDate><guid isPermaLink="false">http://pulse.sqlserverpedia.com/blog/when-the-person-you-hire-is-not-the-person-you-hire/</guid><feedburner:origLink>http://pulse.sqlserverpedia.com/blog/when-the-person-you-hire-is-not-the-person-you-hire/</feedburner:origLink></item></channel></rss>
