2016-03-07 36 views
-2

我试图使用php与sql server单击备份所有数据库。但是我在下面的语句中遇到了一些语法错误。在php中使用sql语句时出现了一些语法错误

$stmt="BACKUP DATABASE" .$row['name']. "TO DISK ='d:\back1\'". $row['name'] . "_" . date("Y-m-d_H-i-s").".bak"; 

任何人指导我这样做?

+1

因为我们不知道你的变量包含我们不能回答你为什么这是行不通的。对于我们所知的所有'row ['name']'可能是'as'd'awd'a2'dq'2'a2'e *“*”*“”“”“'。请在打印完字符串后打印出'$ stmt',然后看看'$ stmt' – h2ooooooo

+1

在变量替换之后打印出'$ stmt'并且答案会很明显 –

回答

1

我认为你缺少“数据库”之间的空格字符“TO DISK”:

$stmt="BACKUP DATABASE " .$row['name']. " TO DISK ...." 
+0

哦亲爱的......谢谢! –

+0

嗨Koby,我想把所有数据库备份到具有相同数据库名称和.bak扩展名的特定目录中。同时你可以提及我的问题的完整声明。 – SaranGaneshan

+0

$ stmt =“BACKUP DATABASE”。$ row ['name']。“TO DISK ='d:\ back1 \'”。$ row ['name']。“_”。date(“Ym-d_H-is”)。“.bak”; –