小编Eri*_*son的帖子

从生产中仅刷新测试数据库中的几个表的最佳方法是什么?

我在 SQL Server 2008R2 中有一个非常大的生产数据库和一个非常大的测试环境数据库。两个数据库具有相似的表结构,但不同的用户/登录名/权限/角色。

我只需要定期从生产中刷新测试数据库中的几个表,大约每月一次。

我目前计划这样做的方式是

  1. 使用 BCP 实用程序从生产中导出我需要的表。
  2. 将 bcp 导出文件复制到测试服务器上
  3. 禁用我在测试中刷新的所有表的索引和约束
  4. 截断测试数据库表
  5. 使用 BCP 将数据加载回测试数据库表。
  6. 在测试中重建索引并重新启用约束

对于这么小的任务来说,这一切似乎有点太复杂了。它似乎也会产生很多重做(在 t-log 中)有没有更好的方法来做到这一点?

我想到的另一种方法是将备份从生产恢复到测试环境 - 但我遇到的问题是完整备份会非常大,我不需要刷新所有表,只需要刷新几个 - - 而且生产数据库中的用户和安全性与测试不同。如果我恢复整个数据库,这将被生产数据库中的安全设置覆盖。

sql-server-2008 sql-server

12
推荐指数
1
解决办法
1万
查看次数

SSMS - 如何为消息窗格启用自动换行

有时我需要对 SQL Server 中的错误消息进行屏幕截图。如何在消息窗格中打开自动换行,以便捕获屏幕截图中的所有文本?

在此处输入图片说明

sql-server ssms

6
推荐指数
1
解决办法
670
查看次数

SQL Server 存储过程的重载构造函数?

我正在创建一个存储过程,我希望它接受不同数量的参数,并根据提供的参数数量具有不同的行为。因此,假设我提供一个参数(例如一个数字),它会返回该数字。如果我给它提供两个数字,我希望它把它们加在一起。如果我为它提供一个字符串和一个数字,我希望它将字符串与数字连接起来并显示它——类似于 Java 中重载构造函数的行为。

SQL Server 中的存储过程是否有这样的功能,或者我最好只创建单独的存储过程。我只想走这条路,让我的应用程序结构更简单。

谢谢

sql-server stored-procedures

4
推荐指数
1
解决办法
6768
查看次数