C# 从C备份和恢复数据库sql#

C# 从C备份和恢复数据库sql#,c#,sql,database-backups,database-restore,remote-backup,C#,Sql,Database Backups,Database Restore,Remote Backup,很好,我使用我的应用程序来执行sql数据库的备份和恢复。在本地模式下,我没有问题。 使用“SqlDataSourceEnumerator”我可以得到局域网服务器的列表。 正确启动应用程序,准备好可用服务器,正确连接。 当我要创建Savefile.dialog的路径以查找备份时遇到的问题是在SQL server的计算机中而不是在我连接的计算机中创建备份。我的问题是:如何解决路线问题 S = save1.FileName; Query ("Backup database" + cmbBase.T

很好,我使用我的应用程序来执行sql数据库的备份和恢复。在本地模式下,我没有问题。 使用
“SqlDataSourceEnumerator”
我可以得到局域网服务器的列表。 正确启动应用程序,准备好可用服务器,正确连接。 当我要创建Savefile.dialog的路径以查找备份时遇到的问题是在SQL server的计算机中而不是在我连接的计算机中创建备份。我的问题是:如何解决路线问题

 S = save1.FileName;

Query ("Backup database" + cmbBase.Text + "to disk = '" + s + "' WITH INIT");
(Maybe in the route I should add the ip)

感谢您的帮助。

TSQL中的BACKUP命令不允许在SQL命令中引用网络路径。因此,如果备份到(例如)C:\Temp\FRED.BAK,它将始终是运行SQL Server实例的计算机的本地路径

因此,要执行我怀疑您想要执行的操作,您需要-(a)备份到运行SQL Server实例的计算机上的某个文件夹,然后(b)将该文件从那里复制到中央存储库


我还想补充一点,TSQL中的RESTORE命令也不允许引用网络路径,被还原的文件还需要位于运行SQL Server实例的机器的本地驱动器上。

SQL Server如何能够在客户端机器上写入?它是否应该通过SMB连接到it?哪个共享名?使用哪些凭据?可能只是文章中的一个类型,但文件名使用大写字母
S
,但在查询中使用小写字母
S
。这些将指向两个不同的值。@Joshua Hysong在转录时大写的错误是我的,但它在应用程序中很好。@SpaceUser7448谢谢。那就错了。现在我必须复制网络上的文件才能结束我的应用程序。@SpaceUser7448你能给我一些提示,告诉我如何继续吗非常感谢你的帮助。@DenisLarramendi-如果答案解决了你的问题,你能投赞成票吗谢谢@DenisLarramendi