Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在两台sql Server之间复制数据的c#服务_C#_Sql - Fatal编程技术网

在两台sql Server之间复制数据的c#服务

在两台sql Server之间复制数据的c#服务,c#,sql,C#,Sql,我的计算机上安装了两台sql Server(SQL2008 EXPRESS)和我们正在使用的特定软件附带的SQL2008。 我需要创建一个始终运行的服务,并在特定时间从SQL2008更新SQL2008 EXPRESS中不存在的记录。。你能建议一种方法吗? 目前我得到的最好的东西是在excel文件中制作一个本地副本,但这将导致每年365个excel文件,我认为这不是一个好主意:) p、 如果我的英语不好,请向美国道歉:)你不必为此手工制作自己的软件。有像OpenDbDiff或RedGate dbd

我的计算机上安装了两台sql Server(SQL2008 EXPRESS)和我们正在使用的特定软件附带的SQL2008。 我需要创建一个始终运行的服务,并在特定时间从SQL2008更新SQL2008 EXPRESS中不存在的记录。。你能建议一种方法吗? 目前我得到的最好的东西是在excel文件中制作一个本地副本,但这将导致每年365个excel文件,我认为这不是一个好主意:)


p、 如果我的英语不好,请向美国道歉:)

你不必为此手工制作自己的软件。有像OpenDbDiff或RedGate dbdiff这样的第三方工具可以实现这一点。这些工具生成可以应用于目标数据库的差异化sql。

当你提到Excel时,我很困惑。Excel与将数据从一个SQL数据库移动到另一个SQL数据库有什么关系

简而言之,如果您需要C#服务,那么就编写一个C#服务,将数据直接从一个数据库复制到另一个数据库。你试图解决的问题不是很清楚

话虽如此,但我对这个问题的理解有限,听起来您需要的是一个SQL作业,它计划每天运行一次,将数据从一台服务器复制到另一台服务器。因为听起来它们在不同的实例上,所以您只需要在源数据库或目标数据库上设置一个链接服务器,并将数据推送或拉入正确的表中

编辑:

好的,如果windows服务是一个需求,那么这是完全可以接受的。但是,正如我提到的,你应该忘记Excel。如果没有其他原因使数据存在于Excel中,则不希望从SQL->Excel->SQL

以下是有关创建windows服务的一些信息:

下面是一个关于在C#中访问SQL的简单教程:


如果您想要一个更正式的解决方案(阅读:数据访问层),我会向您指出。项目的复杂性可能是您是否只想在代码中执行SQL语句,而不是使用完整的DAL的驱动因素。

考虑到您正在使用Express,可以使用SQL Express作为订阅服务器设置复制:。这将避免您自己编写服务代码,而是依赖内部SQL Server功能,专门用于在不同数据库之间推送数据。我将查看您建议的链接,但很可能我需要通过代码来完成…是的,我知道有很多免费工具,但是对于这个项目来说,它必须是手工制作的。。因此,我别无选择。我说excel是因为这是我目前唯一能创建的备份:)我正在考虑导出到excel,然后再导入到另一台服务器,但这太费事了。。我会尽量用更好的语言解释。。我在同一台PC上有两台服务器Server1-.\Data,Server2.\MirrorData,现在我的问题是我不太擅长数据库编程,我不知道使用哪种方法将数据服务器上的信息复制(或更新,如果存在记录)到镜像服务器上。我只知道这是一种服务。。市场需求感谢这些链接,我想我明白了,但我不知道如何将数据从。\data服务器上的一个表传输到。\MirrorData表中的另一个表。\MirrorData表我应该先填写一个数据表,然后再传输还是使用其他方法?@zhv89,您只需要一些类型的内存对象来保存数据。如果使用EF,所有这些对象都将根据框架创建。如果您使用的是SqlCommands,那么您将手动序列化/反序列化到您自己的对象中,这些对象可以根据您的喜好进行详细描述。