THE SQL Server Blog Spot on the Web

Welcome to - The SQL Server blog spot on the web Sign in | |
in Search

Andy Leonard

Andy Leonard is CSO of Linchpin People and SQLPeople, an SSIS Trainer, Consultant, and developer; a Business Intelligence Markup Language (Biml) developer; SQL Server database and data warehouse developer, community mentor, engineer, and farmer. He is a co-author of SQL Server Integration Services Design Patterns and Managing Geeks - A Journey of Leading by Doing, and author of the Stairway to Integration Services.

  • Presenting in Richmond and Charlotte this month!

    I am honored to present at the Richmond SQL Server User Group 15 Jan 2015!

    I am honored to be presenting at the Charlotte SQL Server User Group 21 Jan 2015!

    If you will be in either area on those evenings, please stop by!



  • Getting Started with SSIS: Get the Software and Tools

    People often ask me for tips on getting started with SSIS. My advice is always the same: Get a copy of SQL Server Developer Edition. At the time of this writing, the current version of SQL Server is SQL Server 2014. If you work in an organization that uses SQL Server, you may be able to obtain a copy of SQL Server 2014 Developer Edition from your organization. If not, I highly recommend purchasing your own copy.

    SQL Server 2014 Developer Edition is available at for about $50 USD. Developer Edition has all the features of Enterprise Edition, only the End User License Agreement is different – you cannot use Developer Edition to operate a Production instance.

    You can begin using SQL Server 2014 for free by downloading the 180-day Evaluation Edition.

    Once you have an edition of SQL Server installed, you will need SQL Server Data Tools – Business Intelligence (SSDT-BI) to develop SSIS packages. SSDT-BI is no longer included with the SQL Server installation media. The current version at the time of this writing is SSDT-BI 2013 and you can download it here.

    Once the relational engine and development tools are installed, you are ready to begin working with SSIS!

    Learn more:
    Watch the video!
    Linchpin People Blog: SSIS
    Stairway to Integration Services
    Test your knowledge


  • It’s That Time of Year to Think About Your Career

    If you work with SQL Server (or want to work with SQL Server), this is a good time of the year to think about your career. Why? It’s the holiday season and you should have some time off… unless you have a Crappy Job.

    You can use some of this time to advance your knowledge about SQL Server, especially the new version: SQL Server 2014. How? You can download a free 180-day version here. That version will carry you through the holidays and then some. Install it, poke around some, search for online tutorials (there are some good tutorials available at the Microsoft MSDN site), and learn!


  • A Biml Case Study

    Business Intelligence Markup Language (Biml) is a SQL Server Integration Services (SSIS) design patterns engine.

    A Story of Productivity

    A while back I was contacted by a client experiencing a familiar issue. The Production SQL Server instance was experiencing performance issues due to conflicts between customers and enterprise reporting needs. They contacted a friend who contacted me. When we spoke they asked, “Can you help?” “Yes,” I replied, “I can help.”

    We scheduled a three-day visit. On Day 1 I installed a Linchpin People SSIS Framework and gathered information about the Production databases. The Framework facilitates execution and logging and supports my preference of building a single SSIS package per table. I counted over 700 tables in over 30 databases. I determined an incremental load pattern would serve the customer best for their largest and most active tables. For the smaller tables, a truncate-and-load – whack ‘n’ load – pattern would suffice.

    I fired up Mist, the Biml development environment from Varigence, and started customizing our version of a staging application.

    I need to pause here and let you know that it takes me about an hour to build and test a typical truncate-and-load SSIS package, and two hours to build and test a typical incremental load SSIS package. I was looking at roughly 4.5 months of work with these tables.

    I spent Days 2 and 3 building and deploying SSIS packages using Mist. In the 16 hours that comprised these days, I completed building over 700 SSIS packages, loaded the Framework execution metadata (I used Biml to auto-generate approximately 25,000 lines of T-SQL at approximately 2,000 lines of code per second…), and performed a test load of Production data to the new enterprise reporting instance of SQL Server. When I ran the numbers, I did not do the work of 100 SSIS developers.

    Only 50.

    You can do this, too.


    Biml and Mist are the secrets to my productivity. I not only drastically cut development time and effort, I improved code quality. SSIS packages are generated from tried-and-true templates. If one executes my tests successfully, then all the SSIS packages will execute my tests successfully.

    Learn Biml NOW!

    Would you like to multiply your SSIS productivity while improving code quality? Tim Mitchell and Reeves Smith are delivering an excellent one-day workshop titled Getting Started With Biml 5 Dec 2014 in Vienna, Virginia. The cost for this event is only $129.


    For ETL developers, Biml (Business Intelligence Markup Language) is a game changer. This is a great new tool for Microsoft business intelligence developers who want to make the most of their development efforts. In short, it’s an XML-based language that will allow you to programmatically create SSIS packages. Even better, it can be enhanced with VB.NET or C# scripting to create BimlScript, which allows you to dynamically build and modify a few, dozens, or even hundreds of packages with minimal effort. Best of all, you don’t need budget approval – if you already have Visual Studio, you can use Biml and BimlScript for free!
    In this full-day presentation, we’ll introduce you to dynamic package generation through Biml. Business intelligence consultants Tim Mitchell and Reeves Smith will walk you through the essentials of Biml – getting started, syntax, and common uses – followed by dozens of design patterns to improve your efficiency as an ETL developer.

    Among the topics that we’ll cover:

    • Overview of Biml – What is it? Where do I use it?
    • Introduction to Biml syntax
    • Biml in the Visual Studio environment
    • Introduction to BimlScript syntax
    • Dynamic package generation with BimlScript
    • Metadata management with Biml
    • Create a simple staging package project with dozens of packages in less than an hour
    • Package (re)generation
    • Source control
    • Common design patterns for Biml in the enterprise
    • Taking Biml to the next level with Mist

    By the end of this full-day presentation, you should be equipped to get started immediately using Biml. It’s a revolutionary technology, and we hope that you’ll be as excited about Biml as we are.

    Register today!


  • Some Thoughts on Event Speaker Selection

    I write this from the perspective of experience. I’ve helped organize dozens of events over the past ten years. Feel free to take the parts of this advice that help and discard the parts that don’t. Enjoy!

    Planning an event is hard work. If you’ve never volunteered to help your local User Group or SQL Saturday, I encourage you to get involved. You will work hard and put a lot into it. But I promise you will get more out of it than you put in.

    Every organizer is free to organize their event in whatever way works for them. Different organizers have different goals. Not all goals align and not all goals are compatible. And that’s as it should be. It’s important to have a goal, though. Don’t go into organizing an event without priorities. Perhaps your priorities will include providing a forum for first-time presenters to speak. Perhaps your priorities will include facilitating well-known technologists presenting deep-dive topics. These priorities are mutually exclusive but many other priorities are not. (There’s no rule against mutually exclusive priorities…)

    Thought 1: Set some priorities.

    You may decide to host an open call for presenters. You may decide to invite presenters to deliver certain content. Either is fine. SQL Saturdays and the PASS Summit host open calls for presentations. Each year a number of first-time presenters are selected to present at SQL Saturdays and the PASS Summit. I think this is awesome! In fact, I’ve long encouraged the PASS Summit organizers to include more first-time presenters. Although I doubt I was the only person who made this recommendation, I’m very pleased that there are more first-time presenters than ever at PASS Summit events.

    Growing first-time presenters is good for the community. Will they make mistakes? Probably. I did. Allowing first-timers to get up there and take a shot is an investment in the future of the community.

    Thought 2: If you’re hosting an open call for presentations, set aside some slots for first-time presenters.

    Speaker selection is hard, especially when there are more speakers than available speaking slots. As an organizer, priorities can help here. When I organized events, they grew in popularity to the point where we had more speakers than slots. Our selection committee decided to award a single slot to as many speakers as possible, and promised those not awarded a priority at the next event. Some speakers (few, thankfully) were unwilling to present unless they received multiple sessions. Those speakers were rarely accommodated at events for which I volunteered. While I understand the desire of a speaker to maximize the value of their travel and time, the event is about more than any one speaker.

    It is impossible to please everyone. Are you bored? Do you like a good fight? Tune into Twitter the day after PASS Summit session selections are announced. You will be sure to catch disappointment and complaints (sometimes from me!). It’s simply impossible to award everyone who submits an abstract a session. It gets even more complicated when the (non-trivial) amount of money PASS Summit pre-conference sessions generate are added to the mix.

    The fact someone complains doesn’t mean you did a bad job. It means someone doesn’t like the way you did your job. And since most organizers are volunteers, you don’t have to worry about losing any (more) money. While listening to complaints about the free hours you poured into this volunteer effort stinks to high heaven, please realize this is part of the job. If you are the type of individual who doesn’t tolerate complaints well, please do not do this to yourself!

    Thought 3: Realize someone is going to complain.

    Some of the complaints will be valid. If you select only your friends or only people who fall into this category or that, you can expect legitimate complaints. If you have more submissions than slots and you select some speakers for multiple presentations while not selecting other speakers, again, expect complaints. Ethics come into play here as well. If you select yourself, be prepared to defend your selection – especially if selecting yourself means not selecting someone else, there’s money involved (like the PASS Summit pre-conferences), you have a non-trivial personal relationship with the person selected, or some combination thereof. Remember, you don’t have to be wrong to appear wrong, and all that’s required to breach ethics is the appearance of misconduct. It’s usually best to simply pick someone else.

    Again, priorities can help. Be aware of the perceptions of your choices. People are lousy at reading minds, so publicly communicating your priorities in advance will diffuse mounds of misperceptions. Privately communicating with those not selected will help as well. It sounds trivial – especially when dealing with an experienced, national- or international-level speaker – to drop them a note saying, “We didn’t select you this time but we appreciate your submission and promise to give your submission priority consideration next year.” But it helps. Failure to communicate is a devastating leadership flaw, volunteer or no.

    The best response to legitimate complaints is to admit your mistake, apologize for it, and work to correct it – immediately and / or in the future.

    Thought 4: Respond to valid complaints.

    These are a few bullets I hope will help everyone managing or considering organizing an event. Thank you, event organizers, for all you do for our community!


  • Attending the PASS Summit

    The PASS Summit is an annual gathering of SQL Server professionals and others interested in learning more about SQL Server. Folks come from all over. Here’s a few suggestions for getting more out of your PASS Summit experience.

    “What if I’m Not There?”

    Not everyone can attend the PASS Summit. You can still enjoy a taste of the activities via PASSTV, which will be streamed from the PASS Summit 2014 home page.

    Meet New People

    If this is your first (or one of your first) PASS Summit(s), don’t be shy. If you see someone you want to meet, introduce yourself. If that person is in a conversation or appears otherwise engaged (for example, if that someone is sitting outside the Subway on the fifth level of the Washington State Convention Center furiously typing a blog post… hypothetically…) say “Hi” and, if you want to talk more or discuss some technology question or even just hang out, ask if now or later is a good time. I can speak from experience, most geeks love sharing and will stop typing their blog post or whatever they’re doing to have a chat with you.

    Old timers (like me), if you see someone wearing a First Timers ribbon, you introduce yourself! You remember how you felt your first Summit, break the ice. Our field is disproportionately populated by introverts, take some initiative.

    Be Respectful and Tolerant

    Everyone believes what they believe for a reason. You do not have to agree with what someone says or does. But unless they’re trampling on others, respect their expressions. And if they are trampling on others, intervene. Either personally, or by finding someone who can and will intervene. PASS leadership has gone to great lengths to define a fair and practical Anti-Harassment Policy. Read it. Now. And if you see someone acting in a manner you believe inconsistent with this policy, please tell someone.


    Microsoft has a habit of releasing new cool stuff during the week of the PASS Summit. You can learn about it first by attending or viewing the Keynote addresses Wednesday and Thursday morning. There are too many awesome sessions at the Summit happening at the same time – it’s a fact. But you can view the sessions and powerpoints by purchasing the downloads or USB sticks loaded with them at the PASS Boutique. Even if you cannot attend, you can buy all the content. Plus, the PASS Boutique sells other “PASS-Wear” and data geek paraphernalia.

    I would love to meet you if you’re attending the Summit. You can find me at the Linchpin People booth in the Exhibition Hall or wandering hither and yon. I will also be presenting Wednesday morning. I hope to meet you here!


  • Repost for 2014: Come to the PASS Summit

    I originally posted this five years ago. It’s about my first PASS Summit ten years ago. I’ve made a couple edits and added some links. I hope it will encourage you to attend the PASS Summit 2014. :{>

    "What's the big deal about the PASS Summit, Andy?"

    Allow me tell my story (again): "Hello. My name is Andy Leonard, and I am an accidental database professional." ("Hi Andy.")

    I jumped the fence from applications developer to database person in 2003. I thought I understood databases. I could write queries, design tables, build stored procedures, etc. And then I was standing nearest the server when my team decided to replace the SQL Server person. Bam! Instant SQL Server guru... right? WRONG!

    Yes, I had SQL Server on my resume and had done some cool things with the product. But this was a data warehouse. A large one. The very first thing I learned in my new position was: I didn't know nearly as much as I thought I knew about SQL Server. Or databases. Or anything.

    Sobering, very sobering.

    But Then...

    I met a couple SQL Server heroes at my first PASS Summit - 2004 in Orlando. I met Ken Henderson and Kalen Delaney (blog | @SQLPeople). I learned a lot about database tuning from Kalen Delaney's preconference session. And Ken Henderson inspired me (I wrote about it here).

    The short version: I arrived at PASS Summit 2004 as a developer struggling in his new (accidental) role working with SQL Server. I left PASS Summit 2004 as a database professional.


    Go. Get there. There's lots of good reasons to attend. I firmly believe attending the PASS Summit will change your career, if not your entire life. It changed both for me.

    If you read this and attend, catch up with me. I'm the fat guy with a fu. We can chat about being a database professional, or business intelligence, or about being an accidental DBA (you'd surprised how many there are!). I will be at the Linchpin People booth in the Exhibition Hall. I hope to see you there!


  • [Re-] Updated: Creating a Custom SSIS 2012 Task

    Apologies. My first edition of this post copied outdated links to this series. I have corrected the links but left the comments pointing out my earlier error. Thank you to those who let me know! :{> 

    A while back I asked myself: “Self, do you think it is possible to create a custom SSIS 2012 task using Visual Studio 2012 Express?” That question launched a quest to learn the answer. In this series of posts I describe what I learned. I recently updated the material. You can find the updated series here:

  • Creating a Custom SSIS 2012 Task – The Rambling Introduction
  • Creating a Custom Task in SSIS 2012 – Getting Started
  • Creating a Custom Task in SSIS 2012 – Configuring the Project
  • Creating a Custom SSIS 2012 Task – Signing the Assembly
  • Creating a Custom SSIS 2012 Task – Preparing the Environment
  • Creating a Custom SSIS 2012 Task – Coding the Task
  • Creating a Custom SSIS 2012 Task – Coding the Task Editor
  • Creating a Custom SSIS 2012 Task – Binding the Task and Editor
  • Creating a Custom SSIS 2012 Task – Notes From My Experience



  • Reminder: If You Want to Vote in the PASS Board of Directors Election, You Have 6 Days…

    Per Thomas LaRock’s post titled Board of Directors Election Update on the PASS Blog:

    All PASS members who have not yet received a ballot and who had an existing profile as of June 1, 2014, will be given the opportunity to receive a ballot by updating their profiles before October 5, 2014, at midnight PDT. On October 6, we will pull an updated list of registered voters, filter for duplicates, and then on October 7, we will send all newly registered voters a ballot.  All voting will end on October 14 at noon PDT.

    PASS leadership made this concession and extended the deadline to provide everyone eligible an opportunity to vote. So vote!


  • Well Done, PASS Leadership

    I am impressed with the response of PASS leadership to the controversy surrounding the 2014 Board of Directors election. Others have covered the topic much better than I will here, but a short version is PASS responded to the PASS Board 2013 election controversy (members with multiple email accounts receiving multiple ballots) by requiring members to identify a primary account / email address.

    The issue? Not everyone got the message.

    The initial response from PASS leadership was in line with previous responses from PASS leadership; “We’re not going to change anything” (paraphrased). I was disappointed in this response and said so. But then PASS leadership reversed this decision. In a blog post late Friday evening, PASS President Thomas LaRock (blog | @SQLRockstar) posted Board of Directors Election Update on the PASS blog, outlining the procedure and use cases for those who were hitherto excluded from the 2014 election process; a procedure that would allow them to vote.

    I agree with this decision but I was not impressed. This is what leaders are supposed to do. It’s doing what their constituency elected them to do.

    I was impressed by something I haven’t seen in PASS leadership before. (Maybe it was there and I missed it…) It’s this second paragraph from Tom’s post:

    Before I get started I want to make something very clear: I accept full responsibility for all issues with the current election process. Together we had, and still have, the very best of intentions. On behalf of myself and the entire PASS Board, I offer the sincerest of apologies for all of the frustration caused.

    Two things:

    1. Accepting responsibility. I’ve seen plenty of dictates handed down from the PASS Board in the past, especially when PASS leadership made unpopular decisions. I’ve been reminded of their authority. I don’t recall seeing anyone take responsibility – especially publicly. In my opinion, owning the issue is essential for leadership. I’ll go further and state that I believe not owning the issue is a failure of leadership.
    2. An apology. I believe this apology deflates the harm caused by this issue. More than that, I think this apology puts this issue to rest. Combined with doing the right thing and accepting responsibility, the apology offers closure. Unclosed issues hang out and contribute to the next controversy; they’re “stored fuel” for the next fire. That’s why it’s best to apologize early and often (bad election analogy…).

    I’ve been hoping to see changes in PASS leadership for a while now. Doing the right thing here was admirable. But accepting responsibility and apologizing was one kind of change I’ve been hoping and waiting for.

    Well done, PASS leadership. Well done.


  • Join me for 3 Days of SSIS Training in Denmark – Advanced Integration Services 18-20 Nov 2014

    I am honored to announce Advanced Integration Services will be delivered in cooperation with  in Aarhus, Denmark 18-20 Nov 2014.

    Target Audience

    The target audience for this course is intermediate SQL Server Integration Services developers (or quick learners) who wish to learn best practices and the more advanced stuff, and those who wish upgrade their existing SSIS skills to 2012. Since there are almost no changes between SSIS 2012 and 2014, this course will also be suitable for SSIS 2014 users too.


    • Advanced patterns for loading data warehouses
    • ETL Load Performance
    • Data Cleansing
    • Flow, Precedence, Advanced Loop Containers
    • Error handling
    • ETL Instrumentation
    • Scripting in SSIS
    • Designing Custom Tasks
    • Executing, managing, monitoring, and administering SSIS in the enterprise
    • New features in SSIS 2012 and 2014
    • The (new) Project Deployment Model
    • The (new) SSIS Catalog
    • SSIS Frameworks
    • Business Intelligence Markup Language (Biml)

    I hope to see you there!

    Register today! Sign up for the Advanced Integration Services at the bottom of this page.


  • Presenting at SQL Saturday 323–Paris 13 Sep

    I am honored to present Using Biml as an SSIS Design Patterns Engine at SQL Saturday 323 – Paris 13 Sep 2014! If you will be in the Paris area 13 Sep, read this blog, and want to learn more about Business Intelligence Markup Language (Biml), stop by and say “Hi!”


  • Attitudes I Wish I Had Earlier

    Mike Walsh (blog | @Mike_Walsh) tagged me in his post, 4 Attitudes I Wish I Had Earlier as a DBA. You should read Mike’s post, it’s filled with helpful and good advice and tells cool (and not-so-cool) stories. I admire Mike’s transparency.

    I struggle with the four areas Mike already covered – Work/Life Balance, Empathy, Hero Syndrome, and Getting Things Done. I will not rehash his points. I’m less susceptible to hero syndrome, empathy, and getting things done, but I more than make up for them in work/life balance.

    Here are a couple additional areas where I struggle:

    Subtlety, Nuance, Communication

    Do you remember this scene in the movie, Rain Man? Raymond, the character played by Dustin Hoffman believed both a candy bar and compact car cost about $100. I’m not autistic. I was recently diagnosed with Attention Deficit Hyper-activity Disorder (ADHD). But, like Raymond in the linked scene, I tend to “flatten” things. One result is I miss some things completely and misinterpret other things. Being aware of it helps a lot. I still make mistakes, though not nearly as many as when I was younger.

    There are upsides to the way my brain works. I’m slightly dyslexic. I can read mirrored text almost as fast as forward text. I think multi-dimensionally. A lot of the time my thoughts take the form of graphs. I have a good memory. I remember things from when I was 18 months old and every phone number I’ve ever memorized including the first phone number I memorized at age 5. 767-5580 was my grandmother’s phone number. Incidentally, when I recall that number, I see a graph with placeholders on the X-axis and telephone digits on the the Y-axis. It starts at 5, goes over to 5, then up to 8, then down to 0. But in my mind I remember the shape of the line starting at 5, +0, +3, –8. Weird, I know; but not nearly as weird as the graphs of non-numeric stuff…. I can hyper-focus, pretty much on demand. I have delivered a couple writing projects after ~40-hour-straight marathon editing/writing sessions. I consider these strengths – even the hyper-focus (once I learned to manage it). Dyslexia helps with game theory. It’s difficult to describe the value of looking at a “negative image” of a graph or inverting it. Bell curves? Pffft. Bell mountains. Now we’re talking. The memory helps me replay conversations, thinking about the words and body language. Hyper-focus allows me to isolate words, facial expressions, and body language. Multi-dimensional thinking allows me to re-construct these layers. Using these “strengths” together, I have learned to better comprehend what’s been said. It helps in other ways, too. I can teach you more about it using a game I like to call “Texas Hold’em.” Bring some money and meet me in the Sheraton lobby during the PASS Summit… ;{>

    I think more before I speak (and write) these days. I have a standing policy to not use examples from work in blog posts until at least one calendar year has passed. I do that for perspective. I call a lot of smaller meetings after meetings in which I am challenged personally or professionally.

    If I could back in time, I would tell Younger Andy to practice putting these quirky thinking methods to better use.

    Lone Gun

    Until I was older I did not fully appreciate the value of a team. I think this stems from being small and less coordinated as a child. I was usually picked last for sports activities and didn’t enjoy them that much. Who enjoys stuff they’re not good at?

    Bennett McEwan (LinkedIn) taught me the value of teams when I worked for him at Unisys. He coached me to become a manager, against my will. During the interview process, Ben said, “I think you can become a good manager and that you will enjoy it.” My response? “I think you’re wrong on both counts.” Well, I was wrong and Ben was right. I approach management as a role on the team. I don’t look at it as “being in charge” or “giving orders.” I see it more as the person on the team who deals with members of other teams or management. Yes, there are times when someone needs to make a decision, that’s also part of the job. 99% of the time, we are a team of peers on a mission.

    I now see the value of teamwork and firmly believe iron sharpens iron (Proverbs 27:17).Proverbs27_17

    If I could go back in time, I would tell Younger Andy “boss” is not a four-letter word.


    We all have strengths and weaknesses. Part of the problem is our emotional attachment to weaknesses – we want to hide them instead of admitting vulnerability. I understand and recommend viewing Brené Brown’s TEDx presentation on the The Power of Vulnerability.


  • Presenting on Biml to the SQL Midlands in Birmingham (UK) 11 Sep 2014!

    I am honored to present “Using Biml as an SSIS Design Patterns Engine” to SQL Midlands in Birmingham 11 Sep 2014 starting at 18:15! As at SQL Supper the evening before, the other presenter is my esteemed friend, Chris Webb (@TechniTrain). Chris’ session is titled, “Everything you wanted to know about Power BI but were too afraid to ask.” I look forward to learning more about Power BI from one of the masters.

    The abstract for my session:

    Business Intelligence Markup Language provides a powerful solution for creating and managing SSIS Design Patterns. Andy Leonard, one of the authors of SSIS Design Patterns, demonstrates the benefits of BIML in this session. What are the benefits of Biml? Code re-use, automated code-generation from templates, faster delivery, higher quality.

    If you will be in the Birmingham area on the evening of 11 Sep, please stop by and say “hello!” to Chris and me. Chris is the younger, better-looking, smarter guy. I’m the old guy with a long beard who talks funny (I promise yall I am working on my English). Register today!


    PS – There are still one or two seats remaining in my SSIS 2012 Design Patterns course 8-11 Sep in London. Please register here to learn more about SSIS!

  • Presenting at SQL Supper in London 10 Sep 2014!

    I’m honored to be one of the presenters at the 10 Sep 2014 SQL Supper, which starts at 18:00. The other presenter for the evening is my esteemed friend, Chris Webb (@TechniTrain).

    Chris will be presenting a Q&A session titled “Chat to Your Data with Power BI.” My session is called “SSIS 2014 Data Flow Tuning Tips and Tricks.”

    If you will be in London the evening of 10 Sep, please stop by and say “hello!” to Chris and me. Chris is the younger, better-looking, smarter guy. I’m the old guy with a beard who talks funny. Register today!


    PS – There are still one or two seats remaining in my SSIS 2012 Design Patterns course 8-11 Sep in London. Please register here to learn more about SSIS!

This Blog



Friend of Red Gate

My Company

Blog Roll

Check out the Linchpin People Blog...
Linchpin People Blog

Contact Me


Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement