PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zamień znaki na ciągi wieloznakowe

Twoje kodowanie serwera wygląda na UTF8.
Podejrzewam, że Twoje client_encoding nie pasuje, co może dać ci złe wrażenie na temat tego, z czym masz do czynienia. Skontaktuj się z:

SHOW client_encoding;   -- in your actual session

I przeczytaj te powiązane odpowiedzi:
Nie można wstawić niemieckich znaków w Postgresie
Zamień znaki Unicode w PostgreSQL

Reszta łańcucha narzędzi również musi być zsynchronizowana. Używając na przykład puTTY, należy się upewnić, że terminal zgadza się z resztą:Change settings... Window -> Translation -> Remote character set =UTF-8 .

Jeśli chodzi o Twoje pierwsze pytanie, masz już najlepsze rozwiązanie. Kilka umlautów najlepiej zastąpić ciągiem replace() oświadczenia.

Jak już wiesz, zamiany pojedynczych znaków są bardziej wydajne dzięki (pojedynczym) translate() oświadczenie.

Powiązane:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wyświetlanie wyników zapytania klienta PSQL 8.3+

  2. Atomic UPDATE .. SELECT w Postgres

  3. Eksportuj bazę danych Postgres do pliku CSV

  4. Wymagania dotyczące klucza podstawowego w surowym SQLu komplikują zapytanie w Django

  5. PostgreSQL:tworzenie kopii zapasowych i odzyskiwanie baz danych?