A word on Microsoft Oslo and installing MX files


Each time I sit down to do something with Oslo I look forward to it. However, I keep tripping over the same issue: I never seem to be able to get the switch combination right the first time, and often not after the tenth time either! I always seem to burn 30-40 minutes each and every time I try and get my first .MX file into the target datastore.

This time loss is partly my fault, as for some reason I’ve neglected to write down the command line that works before moving on. Each and every time I’ve done this; it seems that after I’ve got it working, I look at it and say to myself:

Oh, come-on. That’s obvious. I’ll figure it out easily next time
Quote by: A Pillock

Well, let me present this post as evidence that this is positively the last time that it will EVER happen to me again. I’ve been duped too many times, I have now learned my lesson… promise.

I’m just not using the tooling often enough for it to stick, and it’s subtly broken enough to keep tripping me up, so here, for ever more (thanks to Google… oh, and Bing I guess – the jury is still out on that one though) is what you need to do to get a compiled “M” file into a SQL Express database using Integrated security where SQL Express is not the default instance, but is the default SQL Express install (if that makes any sense!?):

MX install <filename>.mx -s .\SQLEXPRESS -d <database name> -c –f

Don’t be fooled. I know this looks deceptively simple, but believe me, this is hard won information! Note the spaces between the switch and its value, for example s and \SQLEXPRESS; that’s the thing that screws with your mind. The docs clearly state that a colon “:” between the name value pair should be used, however, I have found this not to be the case!

I’ve have had it confirmed by @csells via Twitter that this is indeed a bug, and I should be able to use a space, colon or even an equals! But I’m telling you now, dear reader, this won’t be catching ME out again!