sql-server - 使用 MSSMS 制作的 SQL 备份文件不起作用...在 MSSMS(Microsoft SQL Server Management Studio)上
问题描述
我使用 MSSMS 生成了一个 SQL 文件来备份数据库:
- 右键单击数据库
- 生成脚本
- 在“脚本的数据类型”上标记为“架构和数据”
结果,我得到了一个完整的 SQL,它实际上似乎包含了从头开始重建我的数据库所需的所有信息,包括数据。
为了测试它,我尝试在本地运行它,但发现自己卡住了,因为 MSSMS 在它本身生成的 SQL 脚本上抛出错误......我没有任何意义 :(
我错过了什么吗?:
这是 sql 文件的第一行,就像 MSSMS 一样:
有任何想法吗?
编辑 1
这是我在删除所有“ALTER DATABASE”后得到的错误(我认为这些是导致问题的配置规范)
它现在说虽然它们不存在于数据库中,但已经创建了表(它确实创建了数据库,这是一个进步!)
解决方案
您尝试执行的脚本包含无效元素,因为您在本地运行的 SQL 版本与用于生成脚本的 SQL 版本不同。
在您的情况下,脚本是从 azure SQL 生成的,但您在 sql server express edition (localdb) 上运行它
删除 azure SQL 特定元素,它将起作用。
推荐阅读
- c - 为什么我的程序返回(空)和乱码而不是预期输出
- python-3.x - Python virtualenv 无法设置!苹果系统
- python - Python:x[i,:] 和 x[i][:] 之间有什么区别吗?
- r - 标记器使用 ggplot2 删除了科学记数法
- node.js - 如何从 Node 或 Express 设置标签的内容?
- node.js - Cordova 无法安装
- linux - 找不到命令 - 脚本编写腻子错误?
- python-3.x - 重复状态之间的时间差
- progress-bar - 运行进度条,然后在 x 秒后显示 div
- c# - 如何将对象数据的 JSON 数组分配给适当的 T 列表