【问题标题】:Unable to use Select query while using curl使用 curl 时无法使用 Select 查询
【发布时间】:2018-01-13 15:54:20
【问题描述】:

为了我的利益。我正在尝试使用以下 curl 查询:

Delphi$ curl -o /dev/null -s -w %{time_total}  
http://localhost:8080/getquery?db=EmpDt&col=HRDt&query=select * from 
emp where id=1111

但无法执行:

[1] 2784
[2] 2785
0.003799invalid option or syntax: 10

[1]-  Done  curl -o /dev/null -s -w %{time_total} 
http://localhost:8080/getquery?db=EmpDt
[2]+  Done col=HRDt

这里有些地方不正确但无法得到什么?任何帮助都会非常有帮助。谢谢

【问题讨论】:

    标签: macos curl


    【解决方案1】:
    1. 在 shell 中未引用 & 终止命令并在后台运行其左侧的命令;因此您的帖子包含三个同时运行的单独命令。要么单独引用&,反斜杠为\&,要么至少包围&s,通常用单引号'http://host/q?x&y&z'或双引号"http://host/q?x&y&z"包围整个字符串

      ?* 在 shell 中也很特殊,尽管不是命令终止符,并且通常也必须被引用,尽管在您的情况下,在修复空格(如下)之后,这变得不那么重要了

    2. 网址不能包含空格;它必须编码为+(首选)或%20。其他特殊字符(此处为 *=可能不起作用,具体取决于您的服务器如何处理 URL 解析,而这又取决于您的服务器是什么并且您没有给出任何提示;在这种情况下,它们也必须进行百分比编码。 (如果你想要实际的+,而你不需要,它被编码为%2B。)

    【讨论】:

    • 尝试了以下方法:Delphi$ curl -o /dev/null -s -w %{time_total} 'localhost:8080/…* &from&emp&where&id&=&1111' 但仍然出现错误。
    • @user4569636:我说+是空格,不是&——&是HTTP级别的参数分隔符。如果这无助于将您当前的尝试和 exact 错误添加到您的 Q 中。此外,在调试时省略 -o /dev/null -s 可能会有所帮助(稍后将它们放回)。
    猜你喜欢
    • 2020-02-02
    • 2017-03-13
    • 2022-01-14
    • 2014-03-19
    • 2012-12-14
    • 1970-01-01
    • 2023-03-12
    • 2019-09-02
    • 1970-01-01
    相关资源
    最近更新 更多