vsdbcmd.exe fails with error 0x8007000B

Wednesday, 14 April 2010

How to: Prepare a Database for Deployment From a Command Prompt by Using VSDBCMD.EXE shows how to upgrade the schema of a database on a remote server. However I encountered a problem this week running vsdbcmd.exe on a Windows Server 2008 R2 64bit machine:

vsdbcmd.exe /action:deploy /dd+ /manifestFile:Project.Database.deploymanifest
An unexpected failure occurred: An attempt was made to load a program with an in correct format. (Exception from HRESULT: 0x8007000B)

This error normally implies that you've got a mismatch between 32bit and 64bit dlls. I'd copied the DLLs from my Windows 7 32bit development virtual machine, so that made some sense.

It was suggested I copy the DLLs from a 64bit machine, but unfortunately that had no effect. I then noticed that some of the sqlce dlls did appear to be 32bit-specific.

I then downloaded and installed both the 32 and 64bit versions of SQL Compact 3.5 SP2 on the server, and removed the original sqlce dlls that I'd copied along with vsdbcmd.exe.

That seems to have fixed the problem – vsdbcmd now executes correctly.

So the actual list of DLLs ended up copying to the server now that the SQL Compact files are already installed are:

T-SQL Tuesday #005 – Visual Studio 2010 Released

Tuesday, 13 April 2010

6.30am – Woke up

6.40am – Ate breakfast with kids

6.50am – Logged in to MSDN and started downloading the release version of Visual Studio 2010!

Not a bad way to start the day :-)

However, to make this post eligible for the SQL Tuesday series it's worth mentioning that amongst other things, one of the new components released today is Microsoft Report Viewer 2010.

Brian Hartman has blogged about some of the new features in the Report Viewer. Here's a summary from his posts:

Read more about the ReportViewer control in the MSDN Library.

My new laptop – A Dell Studio XPS 1645

Friday, 9 April 2010

Dell Studio XPS 16 Black OpenOne tool that I was lacking in my new role as a Senior Consultant for LobsterPot Solutions was a laptop computer. Back in my UniSA days, if you needed a laptop for a presentation or a conference you just borrowed one, so it was never a problem. Post-UniSA I borrowed my Mum's nice Toshiba, or more recently the small (but capable) HP Mini Netbook that I got from Tech-Ed last year.

Rob and I did a fair bit of research, compared brands and options (including the Sony Z-series which I see Nigel chose), and settled on the Dell Studio XPS 16 model. Being a "laptop-newbie" I particularly valued Rob's good experience with his previous Dell laptop.

The XPS 16 comes with:

The CPU and RAM are similar to the Hyper-V server I built – though happily, while this CPU is also a Core i7, unlike it’s desktop cousin it doesn’t require a great whopping heatsink/cooler stuck on top (which could make shutting the lid a bit tricky!)

Some nice things I’ve discovered so far:

After having a quick play I was pleasantly surprised to find that Dell had shipped it with the latest BIOS firmware - that is refreshing. Nevertheless, after a precautionary backup to my Windows Home Server, I did a clean install of Windows 7 x64 Ultimate and am proceeding to load up all the various "mandatory" applications (Office, SQL Server, Visual Studio, etc).

I'm also thinking I might leverage Windows 7's "boot to VHD" feature to have separate Win7 instances where I can try out pre-release/beta software without "polluting" my primary OS.

Dell Studio XPS 16 Red We chose the red ones, because a) they go faster (obviously!) and b) it kind of matches the red of the LobsterPot logo :-)

Using PowerShell with SQL Agent 2005

Tuesday, 6 April 2010

Today I needed to get a PowerShell script scheduled as a task in SQL Agent for SQL Server 2005. SQL 2008 natively supports running PowerShell, but all 2005 can do is run either T-SQL or CmdExec.

My first approach was to copy the path of the PowerShell executable from the start menu shortcut  - "%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe"

That refused to work giving a really helpful "The step failed" error message.

Trying a few variations I eventually figured out that CmdExec does not expand environment variables. So either rely on the fact that PowerShell.exe is probably in the path, or specify the full path. My working version is:

c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe -file "c:\tmp\test1.ps1" -ExecutionPolicy Unrestricted

If you need PowerShell to talk to Analysis Services, then Darren Gosbell's powerSSAS (with versions for SSAS 2005 and 2008) might be useful too.

More WHS Backup options

Thursday, 1 April 2010

Some updates on options for online backup of Windows Home Server: