簡體   English   中英

用單引號替換雙單引號在 PostgreSQL 12 中不起作用

[英]Replace with single quote to double single quote not working in PostgreSQL 12

將單引號替換為雙單引號在 PostgreSQL 12 中無法正常工作,在 PostgreSQL 11 中工作正常。

PostgreSQL 12

查詢: SELECT REPLACE(patient.note,'''',''''''), * FROM patient

Output 文本: Medicare Secondary Veteran�s Administration

PostgreSQL 11

查詢: SELECT REPLACE(patient.note,'''',''''''), * FROM patient

Output 文本: Medicare Secondary Veteran's Administration

如果您有任何解決方案,請告訴我。

這與您的替換無關,因為有問題的字符不是撇號' (U+0027),而是“右單引號”字符' (U+2019)。

可能連接到 PostgreSQL v12 的客戶端編碼設置不正確,因此字符被翻譯成不受歡迎的東西。 將角色轉移到 v12 時也可能出現錯誤。

要診斷此問題,請嘗試

SELECT note::bytea FROM patient;

如果這包含e28099 ,則數據庫中的數據很好,問題在於您的客戶端編碼。 這假設數據庫的服務器編碼是UTF8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM