SQL 语句中的空格问题

code_man 2009-03-25 05:11:32
有一个sql语句,就是通不过,怀疑是空格问题,大家帮忙看看怎么解决
restore database db_GoodsManage From disk = 'E:\Program Files\hyl\评估系统\data2\data.bak'
with move 'db_GoodsManage_Data' to 'E:\Program Files\hyl\评估系统\db_GoodsManage_Data.mdf',
move 'db_GoodsManage_Log' to 'E:\Program Files\hyl\评估系统\db_GoodsManage_Log.ldf'
错误提示:
File 'db_GoodsManage_Data' cannot be restored to 'E:\Program Files\hyl\评估系统\db_GoodsManage_Data.mdf'. Use WITH MOVE to identify a valid location for the file.
.......................
大家看看怎么修改才能通过
...全文
192 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
claro 2009-03-26
  • 打赏
  • 举报
回复
帮顶。
ai_li7758521 2009-03-26
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 fcuandy 的回复:]
空格+中文+长路径,就有可能导致问题,比如某些sqlserver2k的安装..
[/Quote]支持,这样太容易出问题了
ljluck7687 2009-03-25
  • 打赏
  • 举报
回复
试试下面三种写法:
restore database db_GoodsManage From disk = 'E:\Progra~1\hyl\评估系统\data2\data.bak'

restore database db_GoodsManage From disk = '"E:\Program Files\hyl\评估系统\data2\data.bak"'

restore database db_GoodsManage From disk = 'E:\"Program Files"\hyl\评估系统\data2\data.bak'
fcuandy 2009-03-25
  • 打赏
  • 举报
回复
空格+中文+长路径,就有可能导致问题,比如某些sqlserver2k的安装..
dawugui 2009-03-25
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 code_man 的回复:]
已经确认了,我删掉路径中的Program Files就好了
现在难题是怎么解决Program Files
[/Quote]

这是联机帮助中的例,可以带空格.

还原数据库并移动文件
下例还原完整数据库和事务日志,并将已还原的数据库移动到 C:\Program Files\Microsoft SQL Server\MSSQL\Data 目录下。

RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY,
MOVE 'MyNwind' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.mdf',
MOVE 'MyNwindLog1' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.ldf'
RESTORE LOG MyNwind
FROM MyNwindLog1
WITH RECOVERY



你得确实你是否存在目录: 'E:\Program Files\hyl\评估系统'
你的SQL 装在E盘吗?
fcuandy 2009-03-25
  • 打赏
  • 举报
回复
知道问题原因了,就以后注意一下。
ai_li7758521 2009-03-25
  • 打赏
  • 举报
回复
关注
sdhdy 2009-03-25
  • 打赏
  • 举报
回复
把Program Files用""括起来呢?
htl258_Tony 2009-03-25
  • 打赏
  • 举报
回复
不会存在全角的字符吧
ak47zy 2009-03-25
  • 打赏
  • 举报
回复
虽然跟sql无关,但是我记得打包安装的时候[manufacture]里就是c:\ProgramFiles这样一个路径,也许可以用上。
code_man 2009-03-25
  • 打赏
  • 举报
回复
已经确认了,我删掉路径中的Program Files就好了
现在难题是怎么解决Program Files
zhoulehua 2009-03-25
  • 打赏
  • 举报
回复
注意路径的几个问题,
1.反斜杠的问题
2.空格的问题
3.中文
dawugui 2009-03-25
  • 打赏
  • 举报
回复
估计不是空格的问题,是你路径中存在中文的问题,不用中文再试试.
code_man 2009-03-25
  • 打赏
  • 举报
回复
刚才试验了一下,就是因为路径中的Program Files中间有空格
大侠们看看怎么解决啊?
code_man 2009-03-25
  • 打赏
  • 举报
回复
这个路径确实存在啊,可能就是因为路径中存在空格的原因
code_man 2009-03-25
  • 打赏
  • 举报
回复
补充一下:
数据库使用的是sql server 2005 express
dawugui 2009-03-25
  • 打赏
  • 举报
回复
路径不对,检查你文件的路径是否正确.

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧