SQL Saturday Vancouver - Agile Database Development

11 January 2012

. I am honored to say that I have been chosen to give an updated version of my presentation Database Development: Keep it Agile, Not Fragile at SQL Saturday 114, in Vancouver, BC, on March 17th, 2012.

The world of software development is accelerating. The time between a business idea and its release date is shrinking. That means developers, business staff, and IT personnel need to do more iterative (a.k.a. agile) design,  development, and deployments. Agile development for most types of systems is a known quantity. Agile development for databases is harder, and the best practices are more obscure.

Having done a few hundred database releases in an agile fashion, I’ll be presenting best practices, anti practices, tips, tricks, demos, and scripts you can use. Don’t miss out!


T-SQL Tuesday #25 - Tips and Tricks

13 December 2011

It is T-SQL Tuesday once again, hosted by Allen White (b / t). The theme for this T-SQL Tuesday is Tricks.

One of my favorite tricks is to use INTERSECT when I have to rewrite a SELECT query, to make sure I am returning the same data.

Let’s say I have a slow query that returns 1640 rows:

I refactor it for speed, and make sure it still returns 1640 rows:

How am I sure my new query returns the same data? I use INTERSECT, and make sure the intersect-ed query returns the same number of rows as the original query:

“Success is concrete. Just like the Mafia.”

Now I know my changes have not affected what data is returned. Success!

I also have a more concrete example, using the AdventureWorks2008 R2 database, and Example.sql .