插入符号在 postgresql 中做什么?

what does caret do in postgresql?

我正在玩 hackthebox 机器,当前的机器有一个 postgresql 数据库。查询以 ' 中断,如下所示:

ERROR: unterminated quoted string at or near "'" LINE 1: Select * from cars where name ilike '%test'%' ^

我知道 % 用于在查询字符串中搜索所提供的字符,但是 ^ 有什么用?

粗体突出显示我的测试查询

我的所有搜索都产生了关于正则表达式和插入符号表示字符串开头的结果。加上关于使用 cli 或类似东西的其他结果。

谁能告诉我查询结束时它在做什么?

您正在查找插入符号在错误消息中的具体用法。

如果我运行这个查询:

psql -c " Select * from cars where name ilike '%test'%'"

这是我得到的,保留换行符和空格:

ERROR:  unterminated quoted string at or near "'"
LINE 1:  Select * from cars where name ilike '%test'%'
                                                     ^

插入符号指向上一行发生错误的位置。在这种情况下,这就是从未关闭的左引号所在的位置。

如果您使用的工具会错误地格式化错误消息,您应该考虑换用不正确的工具,或者想办法解决它。