在shell中转义PostgreSQL的单引号

用户名

我正在尝试通过postgres帐户下的psql执行SQK。我可以运行不包含引号的SQL

root@server:/home/rosta/SCRIPTS# su postgres -c "psql -c 'SELECT NOW()'"
              now
-------------------------------
2014-06-07 09:38:17.120368+02
(1 row)

使用包含诸如SELECT'hi'的引号的SQL查询会出现问题。我正在用简单的“ hi”进行测试,但是我想从shell脚本中执行类似的操作。

su postgres -c "psql -c 'create database $DB_NAME template=template0 encoding='utf8' owner=aaa lc_collate='cs_CZ.utf8''"

谁能告诉我如何在编码中转义引号并整理上面的命令

我的一些测试:

root@server:/home/rosta/SCRIPTS# su postgres -c "psql -c 'SELECT \'hi\''"
bash: -c: line 0: unexpected EOF while looking for matching `''
bash: -c: line 1: syntax error: unexpected end of file
root@server:/home/rosta/SCRIPTS# su postgres -c "psql -c 'SELECT \\'hi\\''"
bash: -c: line 0: unexpected EOF while looking for matching `''
bash: -c: line 1: syntax error: unexpected end of file
root@server:/home/rosta/SCRIPTS# su postgres -c 'psql -c \'SELECT \\'hi\\'\''
穆雷尼克

我通常要做的是"postgres -c的参数使用双引号(),对的参数使用转义的双引号(\"psql -c这样,我可以'在SQL字符串中使用单引号()完全没有问题:

[root@mycomputer ~]# su postgres -c "psql -c \"SELECT 'hi'  \" "
 ?column? 
----------
 hi
(1 row)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在PostgreSQL中转义所有单引号

来自分类Dev

在PowerShell中转义单引号

来自分类Dev

在highcharts中转义单引号

来自分类Dev

在sed中转义单引号

来自分类Dev

在单引号内的双引号中转义单引号

来自分类Dev

在Android的资源XML中转义单引号

来自分类Dev

如何在grep中转义单引号

来自分类Dev

如何在Oracle中转义单引号?

来自分类常见问题

如何在sed中转义单引号?

来自分类Dev

在PowerShell中转义单引号符号

来自分类Dev

在XPath绑定WPF中转义单引号

来自分类Dev

无法在动态SQL中转义单引号

来自分类Dev

如何在`jq`中转义单引号

来自分类Dev

在PHP中转义单引号mysql查询

来自分类Dev

在XPath绑定WPF中转义单引号

来自分类Dev

(iOS) 在 XML 中转义单引号

来自分类Dev

如何在JavaScript中转义单引号或双引号?

来自分类Dev

applescript / shell中的单引号转义

来自分类Dev

在包含单引号和双引号的字符串中转义单引号

来自分类Dev

如何在ARM模板中转义单引号

来自分类Dev

在SQL查询C#中转义单引号

来自分类Dev

使用动态查询在openquery中转义单引号

来自分类Dev

剃刀在数据属性中转义单引号

来自分类Dev

如何通过Ansible在Postgres查询中转义单引号

来自分类Dev

在控制台日志输出中转义单引号

来自分类Dev

如何在查询过滤器中转义单引号

来自分类Dev

在Xtend模板表达式中转义单引号

来自分类Dev

在sed替换字符串中转义'(单引号)

来自分类Dev

在bash脚本命令中转义单引号