Запрос PostgreSQL, возвращающий не-Unicode строки (персидский)? - PullRequest
0 голосов
/ 12 января 2019

В моей базе данных есть функция с именем rep_request_minor()

и мое определение базы данных:

  1. кодировка: UTF8
  2. сопоставление: en_US.UTF8
  3. тип сортировки: en_US.UTF8

проблема в том, что когда я выполняю эту функцию в моей базе данных, вывод верен, но когда я выполняю ее в другой программе, вывод будет неправильным: (

так что мне делать для преобразования или приведения выходных данных моего запроса?

Это мой вывод в программе отчетов

enter image description here

1 Ответ

0 голосов
/ 12 января 2019

Существует два варианта: либо символы правильно хранятся в базе данных, и ваш клиент неправильно их интерпретирует, либо они неправильно хранятся в базе данных.

Чтобы диагностировать это, примените функцию length() к одной из строк и посмотрите, соответствует ли результат вашим ожиданиям или он слишком велик.

Если строки кажутся правильными в базе данных, возможно, в вашей клиентской программе настроена неправильная кодировка клиента.

Если строки в базе данных неверны, возможно, проблема в неправильной кодировке клиента во время загрузки данных (например, вы загружаете данные UTF-8, но устанавливаете кодировку клиента в LATIN-1).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...