使用SP克隆整个数据库

han*_*ock 0 sql database sql-server clone sql-server-2005

我试图找出这是否可能,但到目前为止我还没有找到任何好的解决方案.我想要实现的是编写一个可以克隆数据库但没有存储数据的存储过程.这意味着应包含所有表,视图,约束,键和索引,但不包含任何数据.可以吗?

mar*_*c_s 5

当然 - 你的存储过程将不得不读取系统目录视图找出是在数据库中的哪些对象,确定其潜在的相关性,然后创建一个单一的或重新创建数据库的SQL脚本的集合,并执行那些.

这是可能的 - 不是很好,也很容易.特别是对象之间的依赖关系可能会比第一次遇到眼睛更令人头疼....

你也可以:

  • 使用像SQL Server Management Studio这样的东西(如果你在SQL Server上 - 你没有指定)并手动创建脚本,只需在单独的服务器上重新执行它们

  • 使用像Redgate SQL Compare这样的"diff"工具来比较两台服务器并让第二台服务器更新