我正在尝试从psql提示符执行UPDATE。我想将国家/地区名称的所有实例从Cote d"Ivoire
更改为Cote d'Ivoire
(因此双引号会成为单引号)。我的第一次尝试只是改变了psql提示符(注意数据库名称和井号字符之间的双引号)......
database=# UPDATE address SET country = 'Cote d\'Ivoire' WHERE country = 'Cote D"Ivoire';
database"#
...所以我逃脱了双引号并得到了一个错误:
database=# UPDATE address SET country = 'Cote d\'Ivoire' WHERE country = 'Cote D\"Ivoire';
Invalid command \"Ivoire';. Try \? for help.
我做错了什么?
更新
我使用dollar-quoted string constants来实现我想要的目标:
database=# UPDATE address SET country = $$Cote d'Ivoire$$ WHERE country = $$Cote D"Ivoire$$;
UPDATE 22
答案 0 :(得分:0)
如果您在字符串中使用转义符,则需要使用转义字符串语法。在单引号前加上大写字母E.请参阅此完整答案:https://stackoverflow.com/a/12320729/1413900