无法打开数据库“xxx”,因为它是版本 904

Moh*_* Gh 3 sql-server

我无法附加我的数据库。当我尝试在 SQL Server Management Studio 中附加数据库时,出现以下错误:

无法打开数据库“C:\FILES\ACCOUNTING.MDF”,因为它是 904 版。此服务器支持 852 版及更早版本。不支持降级路径。无法打开新数据库“C:\FILES\ACCOUNTING.MDF”。CREATE DATABASE 已中止。(.Net SqlClient 数据提供程序)

我已经尝试过这些命令:

cd "C:\Program Files\Microsoft SQL Server\130\LocalDB\Binn"

SqlLocalDB.exe delete "MSSQLLocalDB"

SqlLocalDB.exe create "MSSQLLocalDB"
Run Code Online (Sandbox Code Playgroud)

但它仍然有错误

mar*_*c_s 7

不能这样做 - 你不能从较新版本的 SQL Server (v904 = SQL Server 2019 ) 到旧版本(v852 即 SQL Server 2016 )附加/分离或备份/恢复数据库- 内部文件结构只是太不同,无法支持向后兼容性。

您可以通过以下方式解决此问题

  • 在所有机器上使用相同版本的 SQL Server - 然后您可以轻松地在实例之间备份/恢复数据库

  • 否则,您可以在 SQL Server Management Studio ( Tasks > Generate Scripts) 或使用第三方工具为结构(表、视图、存储过程等)和内容(表中包含的实际数据)创建数据库脚本

  • 或者您可以使用 Red-Gate 的SQL CompareSQL Data Compare等第三方工具在源和目标之间进行“差异”,从这些差异生成更新脚本,然后在目标平台上执行这些脚本;这适用于不同的 SQL Server 版本。