SQL Server 2008 allowed you to slipstream service packs and cumulative updates into the installation media. In 2012 an additional and better method was created called "Product Updates" and (later) "Servicing Updates". PSS wrote a decent blog post introducing the feature.

In summary:

  • Put your raw Service Pack and Cumulative Update executables into a folder on the installation media.
  • Modify the DefaultSetup.ini to have some additional options.

  • The appropriate updates will be identified and installed as part of the setup with no further action required.

But I had a couple questions:

  • Can you organise the patches into subfolders?

  • Can you give the patches more descriptive filenames?
  • Is the /UpdateEnabled setting required? The PSS blog post didn't think so:

    But a comment on the TechNet documentation said it was:

    Which was true?

There was a blog post by Boris Hristov which had some good images of the various places to look in the GUI to make sure that the updates have been picked up correctly. Using these and through experimentation I was able to answer those questions.

  • Can you organise the files into subfolders?

    No. If you do, the patches won't be picked up.

  • Can you give the files more descriptive names?

    Yes. The names of the executables don't matter.

  • Is the UpdateEnabled setting required in DefaultSetup.ini when specifying the UpdateSource there?

    Yes! If it's set to false then the updates won't be discovered. Also, when set correctly, the first part of Setup will show the "Use Microsoft Update" checkbox unticked; this is the part which the PSS blog says only searches for updates to the SQL Server Setup (and not SQL Server itself). Truly confusing but it's normal.