我有一个相当奇怪的问题,我有一个自动构建工具,它调用mysql命令行来拆解然后从SQL文件设置数据库。
在一台计算机上它工作正常,它基本上是在调用:
Mysql -h {Connection :: Host} -u {Connection :: User} --password = {Connection :: Password}< {SQLFILE}
我刚刚在另一台计算机上检查过它并尝试构建并且它一直给我错误“系统无法找到指定的文件。”。 MySQL版本是相同的5.1,没有其他文件发生变化。我所知道的唯一不同的是构建文件的部署位置......在家中它们被部署到:
d:/码/项目/ XXXXX /
而在这台不起作用的计算机上,它被部署到:
c:\ Documents and Settings \ xxxxxx \ My Documents \ Projects \ Other \ xxxxxx \
互联网带回了一些可能性,例如路径中的空间,但是我已经尝试在命令中添加-i(忽略空格)并且它没有任何区别。
有人有什么想法吗?
答案 0 :(得分:2)
这很可能是路径中的空间。空格后的部分将作为不同的参数传递给程序。
尝试用双引号括起{sqlFile}
。
Mysql .... < "{sqlFile}"