[BUG] Inserts to tables with an index view can fail
Unfortunately some of the more troubling bugs can be very hard to reproduce succinctly. Here is one that has been troubling me for a little while : The issue is using indexed views with a calculated...
View ArticleSQLMidlands & SQLLunch
Many thanks to all those that turned out to see my presentation on Thursday (16th of Feb) of “Cursors are Evil” at SQLMidlands. The scripts i used are here :...
View ArticleParsing T-SQL – The easy way
UPDATE 2012-09-12 : For my latest adventures with TSQL Parsers please see this postEvery once in a while, I hit an issue that would require me to interrogate/parse some T-SQL code. Normally, I would...
View ArticleOffset without OFFSET
A while ago Robert Cary posted an article on SQL Server Central entitled 2005 Paging – The Holy Grail which is, as the title would suggest about paging in SQL Server. This article provoked some really...
View Article“Query cost (relative to the batch)” Query cost relative to batch
OK, so that is quite a contradictory title, but unfortunately it is true. There is a common misconception that the query with the highest percentage relative to batch is the worst performing. Simply...
View ArticleIndexed view deadlocking
Deadlocks can be a really tricky thing to track down the root cause of. There are lots of articles on the subject of tracking down deadlocks, but seldom do I find that in a production system that the...
View ArticleJoining on NULLs
A problem I see on a fairly regular basis is that of dealing with NULL values. Specifically here, where we are joining two tables on two columns, one of which is ‘optional’ ie is nullable. So...
View ArticleHow to prevent ‘Select *’ : The elegant way
UPDATE 2012-09-12 For my latest adventures with TSQL Parsers please see this post.I’ve been doing a lot of work with the “Microsoft SQL Server 2012 Transact-SQL Language Service” recently, see my post...
View ArticleReporting on common code smells : A POC
Over the past few blog entries, I’ve been looking at parsing TSQL scripts in a variety of ways for a variety of tasks. In my last entry ‘How to prevent ‘Select *’ : The elegant way’, I looked at...
View ArticleSQL Saturday 162
SQL Saturday 162 was a great event, kudos to the team involved and I took a lot of pleasure in presenting “What’s new in SQL Server 2012 – TSQL”. A number of people asked for the scripts, they are now...
View ArticleAdvanced TSQL training
Over the past few years, Ive had it on my to do list to write and deliver and full-scale SQLServer training course and not just an hour long bite size session at user groups and conferences. To me,...
View ArticleWhen row estimation goes wrong
Whilst working at a client site, I hit upon one of those issues that you are not sure if that this is something entirely new or a bug or a gap in your knowledge.The client had a large query that needed...
View ArticleMy new favourite traceflag
As we are all aware, there are a number of traceflags. Some documented, some semi-documented and some completely undocumented. Here is one that is undocumented that Paul White(b|t) mentioned almost...
View ArticleSQL Saturday 194 - Exeter
Many kudos goes to Jonathan and Annette Allen and the others on the team for confirming SQL Saturday 194 in Exeter on the 8th and 9th of March. The event home page is here...
View ArticleWhen is a whitespace not a whitespace ?
As I'm sure I must have mentioned in the past, I’m presently involved in a large ALM project at a client. Part of this project is using Sql Server Data Tools (SSDT) to aid the developer experience and...
View ArticleSSDT – TSQL Unit testing in multiple environments
Late in December, one the long awaited portions of functionality inside SSDT was released to an eager public, that being unit testing. There has been a lot of noise generated about sql unit testing as...
View ArticleScaling out SQLLunch UK
As you may be aware, I have been running a lunch time user group ‘SQLLunch UK’ having stolen drawn inspiration from Patrick Leblanc (t|b) ’s SQLLunch webcasts. These however are not traditional...
View ArticlePhoto cataloguer
If you are anything like me, by know you will have a few thousand digital images spread across multiple directories and heaven knows how many of those are duplicates!Here’s a little powershell script I...
View ArticleDeploying SSRS artefacts using Powershell ( Simply)
As ive stated in the past, i’m presently part of a team on an ALM project for a major UK based online retailer. The aim of this project is to have fully automated app and database code and schema...
View ArticleA year of SQL Lunchs
Time does fly, and happy birthday SQL Lunch UK.It has been a year since the first SQLLunch UK, and over the year there have been 21 Lunchs with a total of 537 attendees. OK, some of those will be the...
View Article