Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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语句中的路径(从C#.net运行还原时出现异常)_C#_.net_Sql Server - Fatal编程技术网

如何正确格式化sql语句中的路径(从C#.net运行还原时出现异常)

如何正确格式化sql语句中的路径(从C#.net运行还原时出现异常),c#,.net,sql-server,C#,.net,Sql Server,当我从.net C#运行此SqlCommand时: 我得到一个例外: System.Data.SqlClient.SqlException(0x80131904):“C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\Backup\dba.bak”附近的语法不正确 关键字“with”附近的语法不正确。如果此语句是公共表表达式、xmlnamespaces子句或更改跟踪上下文子句,则前一条语句必须以分号终止 结尾有一个分号,这是

当我从.net C#运行此SqlCommand时:

我得到一个例外:

System.Data.SqlClient.SqlException(0x80131904):“C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\Backup\dba.bak”附近的语法不正确

关键字“with”附近的语法不正确。如果此语句是公共表表达式、xmlnamespaces子句或更改跟踪上下文子句,则前一条语句必须以分号终止

结尾有一个分号,这是该语句的预期形式,我尝试了不同的路径格式,有一次在路径周围加上“和”


请提供帮助。

使用MOVE删除
之前的逗号
这不是必需的

还原数据库dba
从DISK='C:\Program Files\…Backup\dba.bak'--这里
通过将“dba_数据”移动到“C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\Data\dba.mdf”,
将“dba_日志”移动到“C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\DATA\dba_Log.ldf”;

此外,我更喜欢在sql server中对字符串文字使用单引号,而不是双引号

如何在C#?@Juan中编写命令文本-我不确定确切位置,但在某些设置中,sql server接受对字符串使用双引号,这就是我放置该注释的原因。我想你可能是对的。现在我想了想,我认为有一个问题什么的。。。
RESTORE DATABASE dba
FROM DISK="C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\Backup\dba.bak",
WITH MOVE "dba_Data" TO "C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\DATA\dba.mdf",
MOVE "dba_Log" TO "C:\Program Files\Microsoft SQL Server\MSSQL12.INSTANZ_A\MSSQL\DATA\dba_Log.ldf";