Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.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
Windows cmd行:直接调用SQL不起作用,但键入整个查询会起作用_Windows_Cmd_Psql - Fatal编程技术网

Windows cmd行:直接调用SQL不起作用,但键入整个查询会起作用

Windows cmd行:直接调用SQL不起作用,但键入整个查询会起作用,windows,cmd,psql,Windows,Cmd,Psql,我试图通过cmd行调用一个sql文件。使用-f命令行将冻结,并且不会移动/返回任何内容 psql.exe -U someUsername -h localhost -d someDbName -f "C:\Users\Name\Desktop\selectNames.sql" 但是,键入整个命令并使用-c确实可以很好地工作 psql.exe -U someUsername -h localhost -d someDbName -c "Select names from table123;"

我试图通过cmd行调用一个sql文件。使用-f命令行将冻结,并且不会移动/返回任何内容

psql.exe -U someUsername -h localhost -d someDbName -f "C:\Users\Name\Desktop\selectNames.sql"
但是,键入整个命令并使用-c确实可以很好地工作

psql.exe -U someUsername -h localhost -d someDbName -c "Select names from table123;" 

如何使用-f调用cmd行中的selectNames.sql文件?

服务器是否在本地计算机上运行,服务器帐户是否有权访问您的用户目录?服务器将执行脚本,如果它无法访问本地C:驱动器和个人桌面文件夹,它将无法执行脚本。@KenWhite是的,服务器正在运行。我如何检查它是否有访问权限?此外,我还尝试通过ProcessBuilder在java类中运行这两个命令,但结果相同,只是我可以看到“文件名、目录名或卷标语法不正确”(这是在使用-f和sql路径时)。抱歉。我不是说服务器是否已经启动并运行了。我询问服务器是否运行在C:\Users\Name\Desktop所在的同一台计算机上。瞧,你是否正坐在运行服务器的同一台计算机的键盘旁?您可以通过检查服务器运行时使用的帐户来检查服务器是否具有访问权限。如果服务器使用的不是您的个人登录,则它无法访问您自己的文件夹。从错误信息中,似乎很清楚,至少其中一个问题的答案是否定的。@KenWhite他们在同一台计算机上运行。