1

I'm trying to copy a database from ye old MSDE to SQL Server 2012 Express, since Microsoft decided not to make MSDE compatible with Windows 7. Lo and behold, when I try the osql restore from disk command, I get the message that 8.0.2055 backups are not compatible with SQL Server 2012.

How can I transfer the database and information in it? Every single Google result has either assumed I was trying to downgrade rather than upgrade, or assumed it was an xp-xp transfer.

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
  • 1
    Can you do a two-step backup/restore? Restore your MSDE .bak file to e.g. SQL Server 2008, and then take a backup from there and restore that to 2012 ? It's a lot of work and a pain - but if you only have to do it once - that seems like the simplest way to go.... – marc_s Jun 25 '12 at 16:13
  • @marc_s I'm downloading/installing/trying that now, but it seems to be the same core software (version number starts with 10.*, etc) so I'm not sure that will work. Is there some way to detach/copy/reattach what I need, that's separate from the backup/restore process? – user1480460 Jun 25 '12 at 16:47
  • SQL Server 2008 = v10.0 / SQL Server 2008 R2 = v10.5 / SQL Server 2012 = v11.0. Both 2008 and 2008 R2 will **definitely** still restore SQL Server 2000 (v8.0) databases... – marc_s Jun 25 '12 at 18:30
  • Well, what you said worked well enough for me to find another error! I was able to upgrade like you said, but the app that used this database is completely incompatible with SQL Server 2012, since it uses osql all over the place. Thanks, though! – user1480460 Jun 27 '12 at 14:21
  • Should be *fairly* straightforward to rewrite all those `osql` calls to `sqlcmd` calls, no?` – marc_s Jun 27 '12 at 14:58
  • Yeah, and for some reason even osql is working. Just have to figure out how to start the service as admin, which should take care of the problems it has with the -E flag. I'm hoping the SUDO script will do the trick. – user1480460 Jun 28 '12 at 17:10

1 Answers1

0

I had the same problem. I used the following procedure to accomplish the task.

  1. Attach the MSDE database file to MSSql 2005.
  2. Run SSMS, right click the attached database and select PROPERTIES
  3. Select the OPTIONS page in the dialog.
  4. On the dropdown combobox 'COMPATIBILTY LEVEL' select 90
  5. Detach the database file Now to upgrade to MSSql 2012
  6. Attach the MSSql 2005 database file to MSSql 2012.
  7. Run SSMS, right click the attached database and select PROPERTIES
  8. Select the OPTIONS page in the dialog.
  9. On the dropdown combobox 'COMPATIBILTY LEVEL' select 110
  10. Detach the database file.
  11. Your MDB file is now a 2012 (level 110) database file

Hope this helps...

Dan Arnold
  • 91
  • 1
  • 2