【问题标题】:how to take sql database backup without data [duplicate]如何在没有数据的情况下进行sql数据库备份[重复]
【发布时间】:2011-01-25 22:46:36
【问题描述】:

可能重复:
Backup SQL Schema Only?

任何人都告诉如何在没有数据的情况下进行 sql 数据库备份。我想从 sql server 2008 中获取所有表和结构。然后导入到另一个 sql server 2008。我不需要数据。

【问题讨论】:

标签: sql-server backup


【解决方案1】:

使用“任务”->“生成脚本”并选择您想要编写的脚本。运行,保存到文件,针对新数据库打开文件并在更改数据库名称以匹配(如果已更改)后运行脚本

【讨论】:

  • 我不能!每个视图、存储过程和函数都是加密的! :(
  • 如果您看不到这意味着您可能不应该看。这是您的 DBA 的问题。
  • 我是开发者。我们有备份。它只是为了备份代码。数据没有改变。
  • @Otávio Décio:即使对象不会被加密,现在,取决于 SSMS 设置:索引不见了,外键不见了,检查约束不见了,触发器不见了,全文索引不见了,数据压缩不见了,独特的约束消失了,PRIMARY KEYS 消失了。依赖顺序错误。加密对象丢失。无法创建依赖于链接服务器的对象。无法创建依赖于那些未创建的对象的对象......等等......哦,看起来像一个模式备份,但实际上并不是一个。
  • @StefanSteiger - 我愿意接受建议。
【解决方案2】:

第一次你可以使用脚本数据库选项,正如 Otavio 建议的那样。

随后,您可以使用 RedGate SQL Compare 之类的工具或 Visual Studio 数据库版的 Compare Schema 功能。这些工具允许您将架构(即“表结构”)从一个数据库同步到另一个数据库。

【讨论】:

  • Remus,你也可以第一次使用SQL Compare。创建一个空数据库,将其与您的数据库进行比较,也许可以使用设置以使脚本不那么冗长(无事务)
  • 当然可以,只是成本问题,因为 RedGate 的工具和 VSTS DB 都不是免费的。
  • 亲爱的感谢您的建议
【解决方案3】:

您可以通过编写脚本来做到这一点。 要走的路是:

  • 右键单击要编写脚本到其他数据库的表。
  • 脚本表为:-> 创建到新的查询窗口。

【讨论】:

  • 亲爱的尤尼斯。谢谢。但我有 300 多张表和许多 procedured 和函数。
  • 我想我上面的答案最适合你,然后呵呵。
猜你喜欢
  • 2015-09-22
  • 2017-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-07
  • 2018-10-26
  • 1970-01-01
相关资源
最近更新 更多