sql-server - 恢复sql server数据库而不删除现有数据库表

标签 sql-server database

我想将生产服务器数据库复制到开发服务器,我正在使用备份和恢复将生产服务器数据库复制到开发服务器。

我已成功恢复它并在恢复的数据库中添加了表和 SP。 第二天我必须再次恢复相同的数据库,恢复现有表后 SP 将被删除。

我无法在生产服务器数据库上使用 SP 和额外的表。我想将其复制到具有实时数据的开发服务器,并且在开发服务器上我可以做任何事情而不影响生产服务器数据库。

有人可以建议更好的方法吗?

最佳答案

您是说您想要合并更改。

  1. 使用数据库差异工具(例如 Visual Studio 2013 中的数据库比较)在您的开发和产品数据库之间生成“差异”脚本。例如,您针对开发和产品运行此工具,它会输出一堆创建过程、 View 、表等脚本

  2. 为所有仅用于开发的表生成插入脚本

  3. 通过开发恢复生产

  4. 在 dev 中执行步骤 1 和 2 中的脚本

任何类型的合并通常都需要一些人为干预。例如,如果您的 prod 表有一列在 dev 中是不同的数据类型,并且您的 SP 期望如此,该怎么办?

另一种选择是构建仅将数据从产品加载到开发中的集成,但这需要维护,因为开发和产品中发生更改

关于sql-server - 恢复sql server数据库而不删除现有数据库表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35192493/

相关文章:

java - 如何访问从ui到数据库的请求

sql-server - 无法访问列中包含 Φ 字符的数据库

sql-server - 获取 GROUP BY 中的第一个值而不是聚合值

sql-server - SQL Server Express : how to allow remote connections

sql - 根据范围拆分记录

mysql - 可以包含数据库表中预定义值的值的字段使用什么数据类型?

mysql - 哪个数据库最适合 Magento

sql-server - Debezium:数据库中没有记录最大LSN;请确保 SQL Server 代理正在运行

java - 在 Java 中设置默认模式名称

sql - 对多对一关系的聚合数据建模的有效方法(例如,stackoverflow 问题的投票数)