如何使用 C# 将表从 SQL Server Express 移动到另一台计算机中的标准版
本文关键字:一台 计算机 标准版 何使用 SQL 移动 Express Server | 更新日期: 2023-09-27 18:33:41
我需要从SQL Server Express中获取几个包含其数据的列表,并将它们发送到另一台计算机,并在具有C#的SQL Server标准版中创建或替换它们。
我一直在寻找解决方案,我找到的最接近的解决方案是恢复DataTables
或DataSets
中的表并使用 WCF 发送它们,但我认为我会丢失索引,并且我读到不建议使用 WCF 发送DataSets
。
我也看过Microsoft同步框架,但我没有使用它,我不知道它是否可以轻松解决这个问题。我被告知这样做的另一种方法是将表和索引导出到 SQL 脚本。
我的问题是:有没有一种简单的方法可以做到这一点?如果没有,哪种方法不那么痛苦?
编辑:对不起,我忘了提到:
-这将每周发生一次或两次。
-机器不在同一网络中。
-最终,表的结构可能会更改。
可以使用 c# 备份整个数据库并将其还原到标准 SQL 服务器中。
如果数据库彼此具有网络可见性,一种方法是在其中一个实例中创建链接服务器,并从其中一个实例中选择进入到另一个实例。
- 您可以备份数据库,在新实例中还原它。
- 您可以分离它并将其附加到新实例上。
- 您可以生成 sql 脚本并在新实例上运行它。
如果要
从 C# 执行此操作,请使用 SMO(SQL Server Management Objects)。
在这里,您有一个示例,用于在两个数据库之间建立架构和数据。
传输数据
此项目展示了如何将其用于表:
使用 SQL Server 管理对象复制表