SQL Server Developer Videos

Here are our SQL Server development tutorials.

Change Excel Delimiter

Filmed: 8/16/2014

Length: 00:04:40 minutes

Here I'm going to show you how to changed the delimiter when you output Excel data to a CSV. By default you can only use a comma as a delimiter, and changing it isn't obvious. This isn't the kind of thing that comes in handy very often, but when it does you'll love knowing this trick.

Click here to watch the video!
Click here to download the video!

Intro to ASP.NET

Filmed: 9/3/2009

Length: 31:21 minutes

Intro to ASP.NET This is a decent intro to ASP.NET.  Personally I don't think it's the best one you'll ever see, but it's ok.  You'll see a pretty good intro to getting started writing pages in .NET and you'll get up and running on a couple easy data-driven pages.

Click here to watch the video!
Click here to download the video!

Check if File Exists

Filmed: 1/10/2010

Length: 3:04 minutes

Inspired by a user question I decided to make a quick vid on how to use a script task to check that a file exists. No frills in this one, just a quick walkthrough of the code.

Click here to watch the video!
Click here to download the video!

Clean Package Design

Filmed: 1/27/2010

Length: 16:37 minutes

This is a nice little primer on designing clean packages that are easier to support. Get rid of the sea of arrows that afflict your processes.

Click here to watch the video!
Click here to download the video!

Commenting Tribal Knowledge in SSIS Packages

Filmed: 9/21/2008

Length: 29:24 minutes

There is a lot of tribal knowledge that accumulates in any organization. Here I discuss some ways to document your SSIS packages so you can start to record some of this information. Your packages will be more supportable, easier to update, and you’ll take hours or sometimes days off of a re-design or support effort. You won’t be sorry you started doing this.

Click here to watch the video!
Click here to download the video!

Connection strings in Package Config Files

Filmed: 6/24/2008

Length: 7:45 minutes

Here I show you how to put your data source connection string inside a package configuration XML file. This was inspired by a forum post by a user so I decided to make a video for him.

Click here to watch the video!
Click here to download the video!

Creating Files with ForEach Loop

Filmed: 6/25/2008

Length: 8:29 minutes

Here I take the intro one step further and show you how to create multiple txt files based off of a looping variable in the ForEach loop container. This is a very common task and I see this question quite a bit in the forums, so I documented it.

Click here to watch the video!
Click here to download the video!

Dealing with Sql_variant in SSIS

Filmed: 2/14/2012

Length: 7:41 minutes

Every now and then you come across something you don't want to deal with that you're forced to handle in your SSIS packages. Here I'll discuss techniques for handling the Sql_variant data type in your packages so your data loads properly.

Click here to watch the video!
Click here to download the video!

Deploy Packages

Filmed: 8/9/2009

Length: 30:21 minutes

Jen and I sit up very late one night and discuss how do deploy SSIS packages. If you don’t know anything at all about deploying packages or just want to learn a couple tricks, then you’ll love this. Plus we’re tired enough to goof around a bit.

Click here to watch the video!
Click here to download the video!

Derived Columns

Filmed: 5/22/2008

Length: 13:06 minutes

Here I show you how to work with derived columns in SSIS and use it to not only marry columns, but also troubleshoot data flows. This is a nice intro to this versatile transform.

Click here to watch the video!
Click here to download the video!

Execute SQL Task with Parameters

Filmed: 5/20/2008

Length: 7:56 minutes

This video discusses how to pass parameters to queries and SPs inside the Execute SQL Task. It doesn’t teach the basics of the task. It assumes you already know how to use it. This video is only concerned with passing parameters.

Click here to watch the video!
Click here to download the video!

Forcing Package Failures

Filmed: 6/27/2008

Length: 13:20 minutes

This one was by user request to show how you can compare the counts of 2 tables and use it to force the package to fail if the counts don’t match. This comes in handy when comparing the counts of the source and destination tables after your load. The scenario is specific but can be modified to anything you like.

Click here to watch the video!
Click here to download the video!

Ground Zero SSIS: Class 1

Filmed: 1/21/2010

Length: 1:01:53 minutes

This is the 1st class I'm teaching at the NTSSUG for ground zero SSIS. I hope to have 6 in all, but it may get stretched out further.

Click here to watch the video!
Click here to download the video!

Ground Zero SSIS: Class 2

Filmed: 3/18/2010

Length: 59:10 minutes

In this 2nd class we discuss how to decide whether you should architect your table loads in single or multiple packages. We also start on file loads.

Click here to watch the video!
Click here to download the video!

Ground Zero SSIS: Class 3

Filmed: 4/15/2010

Length: 1:10:24 minutes

Here in another live presentation to NTSSUG we discuss where to hold your query inside your packages, as well as get into flatfile error handling.

Click here to watch the video!
Click here to download the video!

Introduction to ForEach Loops

Filmed: 6/23/2008

Length: 11:07 minutes

Here I show you the basics of how to work with ForEach loops. Good stuff.

Click here to watch the video!
Click here to download the video!

Introduction to Sequence Containers

Filmed: 6/25/2008

Length: 6:29 minutes

This video takes a look at the basics of using the Sequence Container in SSIS. There’s not a lot to it, but it’s a good intro if you don’t know what it is.

Click here to watch the video!
Click here to download the video!

MultiFlatFile Connection Manager

Filmed: 5/20/2008

Length: 6:12 minutes

Here I talk about how to use the multiflatfile connection manager in SSIS to loop through flatfiles.

Click here to watch the video!
Click here to download the video!

Row Count Transform

Filmed: 5/22/2008

Length: 11:05 minutes

Here I discuss how to use the row count transform in SSIS and give you some good advice for naming and working with the variable associated with it.

Click here to watch the video!
Click here to download the video!

SSIS Basics

Filmed: 4/23/2009

Length: 1:06:23 minutes

This is a live presentation I gave recently. Here is a bare bones bottom of the barrel discussion on SSIS. This is for complete beginners. I’m explaining in this session, the simplest of basics on SSIS and BIDS. I give a couple of basics demos. This is the beginning of what I’ll build on in the next couple sessions as we get deeper into the specifics of this cool product. So if you know absolutely nothing about SSIS then this is the place for you.

Click here to watch the video!
Click here to download the video!

SSIS Basics 2: Flatfile Olympics

Filmed: 11/4/2008

Length: 1:02:15 minutes

Here we’re just going to jump into SSIS and do some real practical work. We’re going to learn all about taking things to/from multiple files. This is not to be missed because there are some really good concepts here that will carry over to many other tasks in SSIS. I specifically chose these operations because they teach such a wide variety of skills. So come learn how to get a gold medal in flatfiles.

Click here to watch the video!
Click here to download the video!

SSIS Data Cleansing

Filmed: 4/19/2008

Length: 33:58 minutes

Fix data errors with derived cols and conditional split transformations.

Click here to watch the video!
Click here to download the video!

SSIS text file errors

Filmed: 4/19/2008

Length: 7:47 minutes

Dealing with SSIS txt file errors. You will learn how to properly redirect outputs to maximize your scrubbing efforts.

Click here to watch the video!
Click here to download the video!

SSIS Using Variables in Script Tasks

Filmed: 5/21/2008

Length: 7:11 minutes

Here I talk about how to setup the script task to work with variables, and how to access them through code once the script can see them.

Click here to watch the video!
Click here to download the video!

SSIS Variable Scope

Filmed: 5/21/2008

Length: 4:36 minutes

Learn how SSIS scopes variables. It’s not a complicated topic, but worth covering.

Click here to watch the video!
Click here to download the video!

Troubleshooting Simple Flatfile Load Errors

Filmed: 9/7/2009

Length: 11:23 minutes

In this video I put together a small SSIS flatfile-to-SQL package, and troubleshoot a couple of errors.

Click here to watch the video!
Click here to download the video!

Beginning Execution Plans

Filmed: 2/3/2010

Length: 11:03 minutes

Here's a level zero introduction to tuning queries. I go over execution plans, sp_help, and clustered primary key indexes.

Click here to watch the video!
Click here to download the video!

Best Habit for Coders

Filmed: 1/1/2012

Length: 5:02 minutes

There's a step you can make in your code to improve it many times over. It's an easy step to take, but it can make all the difference. You shouldn't overlook this step so come learn how to make all your code tons better.

Click here to watch the video!
Click here to download the video!

Designing Efficient Functions

Filmed: 12/28/2009

Length: 11:40 minutes

Here I get on my cert soapbox again. I was going through a practice cert exam and came across an answer to a question that could use a major improvement. I made the improvement and here I show you what and why.

Click here to watch the video!
Click here to download the video!

Grouping Sets

Filmed: 8/20/2009

Length: 17:32 minutes

Here Jen and I go over grouping sets the only way we can. I hope you guys enjoy us late at night.

Click here to watch the video!
Click here to download the video!

Insert Into vs. Select Into

Filmed: 7/14/2011

Length: 13:01 minutes

Knowing how and when to use Insert Into or Select Into can quite often make or break your load process. Here I show you how to tell the difference between them and what their effects are.

Click here to watch the video!
Click here to download the video!

Insert Non-duplicate Rows

Filmed: 9/3/2009

Length: 11:53 minutes

Here we work our way through a coding scenario—inserting rows—that should illustrate the process of solving a problem from the simplest case to your intended result.

Click here to watch the video!
Click here to download the video!

Optimize Query by Intervals

Filmed: 12/1/2009

Length: 14:35 minutes

In this vid, I walk you through tuning a query full of date manipulation (which is performance death). I show you how to free the functions, free the optimizer, and happify your code...plus we talk a little date math. See the accompanying blog at http://midnightdba.itbookworm.com/midnightdba/blog/post/Optimized-Query-by-Hour2c-Day2c-Week2c-or-Month.aspx

Click here to watch the video!
Click here to download the video!

OR is bad, IF is good

Filmed: 12/1/2009

Length: 3:34 minutes

Here I tell you about a common mistake - using OR instead of IF – and show you that IF is better.

Click here to watch the video!
Click here to download the video!

Querying Dev Metadata

Filmed: 12/31/2011

Length: 6:33 minutes

Sometimes you need to get info on objects you've created. Here you can see how you can query for this info, and even learn a cool trick for greatly simplifying the process.

Click here to watch the video!
Click here to download the video!

Relational Division

Filmed: 4/9/2009

Length: 19:41 minutes

Here we discuss relational division, the counterpart to relational multiplication (cross joins). We’ll hit a couple of examples, using subqueries to implement two different kinds of set division.

Click here to watch the video!
Click here to download the video!

Relational Multiplication

Filmed: 4/13/2009

Length: 10:51 minutes

Here’s a quick talk on relational multiplication that gets us to take a closer look at what our joins are really doing.

Click here to watch the video!
Click here to download the video!

SQLSaturday 35: 1 of 3

Filmed: 5/31/2010

Length: 15:00 minutes

Come see our first LIVE taping ever. We have a good time, give away some great prizes and even manage to get a little techie.

Click here to watch the video!
Click here to download the video!

SQLSaturday 35: 2 of 3

Filmed: 5/31/2010

Length: 15:07 minutes

Part 2 of SQLSaturday 35.

Click here to watch the video!
Click here to download the video!

SQLSaturday 35: 3 of 3

Filmed: 5/31/2010

Length: 11:13 minutes

Part 3 of SQLSaturday 35.

Click here to watch the video!
Click here to download the video!

T-SQL: CASE Statement

Filmed: 9/7/2009

Length: 11:44 minutes

Here’s an intro to case statements, in the form of a conversation with Sean. I cover simple case and searched case, and the special use of null. BTW, I really like this video, and I don’t say that very often.

Click here to watch the video!
Click here to download the video!

T-SQL: Find Last Day of Month

Filmed: 8/9/2009

Length: 4:16 minutes

Follow Jen as she steps you through 3 progressively elegant solutions for finding the last day of the month.

Click here to watch the video!
Click here to download the video!

T-SQL: Over() and Partition By

Filmed: 8/19/2009

Length: 4:16 minutes

Show how to use OVER and PARTITION BY to get groups of data with aggregation.

Click here to watch the video!
Click here to download the video!

T-SQL: The Almost Question

Filmed: 3/2/2010

Length: 14:58 minutes

We need a query to get rows that fulfill *almost all* of a set of requirements. How do we work that out? Watch this video, and I'll tell you. Related blog: http://midnightdba.itbookworm.com/midnightdba/blog/ Download the code: http://midnightdba.itbookworm.com/midnightdba/PublicDownload/Almost.txt

Click here to watch the video!
Click here to download the video!

TSQL: Grouping Basics

Filmed: 9/7/2009

Length: 10:01 minutes

Here’s a ground level intro to grouping, with a lovely 80s arcade theme. This is a reshoot of the original Grouping Basics video (now retired).

Click here to watch the video!
Click here to download the video!

UNION and UNION ALL

Filmed: 7/29/2011

Length: 5:23 minutes

Here I talk about UNION and UNION ALL, and the different rules about using ORDER BY, GROUP BY, SELECT INTO, and INSERT INTO with a UNION/UNION ALL query.

Click here to watch the video!
Click here to download the video!

What is a Stored Procedure

Filmed: 3/11/2014

Length: 00:10:18 minutes

Here Jen explains what a stored procedure is, and how to create a basic one with no parameters. She also compares it with other objects stored in the DB.

Click here to watch the video!
Click here to download the video!