我需要将文件DATABASE.MDF
从 SQL Server 2008 转换为 SQL Server 2012?
无法升级数据库“Sales”,因为此版本的 SQL Server 不支持其非发布版本 (539)。您无法打开与此版本的 sqlservr.exe 不兼容的数据库。您必须重新创建数据库。
无法打开新数据库“销售”。CREATE DATABASE 已中止。(Microsoft SQL Server,错误:950)
我需要将文件DATABASE.MDF
从 SQL Server 2008 转换为 SQL Server 2012?
无法升级数据库“Sales”,因为此版本的 SQL Server 不支持其非发布版本 (539)。您无法打开与此版本的 sqlservr.exe 不兼容的数据库。您必须重新创建数据库。
无法打开新数据库“销售”。CREATE DATABASE 已中止。(Microsoft SQL Server,错误:950)
只需附加它,它将被升级。如果您没有 LDF 文件(为什么没有 LDF 文件?),您可能必须使用:
CREATE DATABASE [DatabaseName] ON
(FILENAME = N'Drive:\path\file.mdf')
FOR ATTACH_REBUILD_LOG;
当然,也有一些注意事项...
文件激活失败。物理文件名“..._log.LDF”可能不正确。
无法重建日志,因为数据库未完全关闭。
消息 1813,级别 16,状态 2,第 1 行
无法打开新数据库“数据库名称”。CREATE DATABASE 已中止。
*=
/ =*
join 语法。FWIW,一种将数据库从一个实例移动到另一个实例的更安全的方法是使用BACKUP
/ RESTORE
(原因是如果您的备份失败,您仍然拥有数据库的副本 - 如果您分离数据库,并且发生了一些事情错了,你有零份)。尽管即使采用这种更安全的方法,上述一些问题仍可能适用。
OP 似乎误解了他的数据库类型。SQL Server 的 539 版本不是 2008 而是 SQL Server 2000。请参阅此线程: SQL Server 文件版本号:我在哪里可以找到参考?
我在尝试将 SQL Server 2000 db 附加/恢复到 SQL Server 2012 实例时遇到了同样的错误消息。也许有办法解决它,但我所做的是首先转换为 SQL Server 2008 R2,并且然后到 SQL Server 2012。这执行没有问题。