如何在 postgres 中的位置参数周围添加单引号?

问题描述 投票:0回答:1

我正在使用 pgx/v5 和 NamedArgs 来执行查询。我想在某些参数周围添加单引号。 pgx 只是用位置参数替换命名参数。

例如,

WHERE x = @Name
变为
WHERE x = $1
。如果我这样做
WHERE x = '@Name'
,它就会变成
WHERE x = '$1'
'$1'
最终被解释为字符串文字。我不想在我这边进行替代来防止 SQL 注入攻击。

另外,我也尝试过

SELECT ''' || $1 || ''';

quote_literal($1)

sql postgresql go pgx golangci-lint
1个回答
0
投票

这是你想要的吗?我不确定,但如果是的话,试试这个。

SELECT quote_literal(E'$1');

 quote_literal
---------------
 '$1'
© www.soinside.com 2019 - 2024. All rights reserved.