powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Postgres и XML. Проблема с поиском
2 сообщений из 2, страница 1 из 1
Postgres и XML. Проблема с поиском
    #34643679
rkorotovskikh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем знатокам Postgres. Нуждаюсь в помощи!
У меня такая проблема. Есть таблица, которая имеет поле типа Text(содержит xml документ).
Выполняю поиск xpath_bool. Все работает на ура. Но если я добавляю что-нибудь на русском
- все, поиск не выполняется. Стоит PostgreSQL 8.2 под Windows. Кодировка - win 1251. С таблицами, где есть русский текст проблем нет (в смысле поиска).
Помогите решить проблему

Привожу данные:
Создал таблицу: CREATE TABLE t_articles (
article_id int4 NOT NULL,
article_title varchar(255) NOT NULL,
article_xml text
);
Добавил данные: INSERT INTO t_articles (article_id, article_title, article_xml)
VALUES (2, 'Other Beatles',
'<beatles id = "b2">
<beatle instrument = "bass" alive = "yes">paul mccartney</beatle>
<beatle instrument = "drums" alive = "yes">ringo starr</beatle>
</beatles>')


Провожу поиск:
SELECT
article_id, xpath_string(article_xml,'/beatles/@id') AS beatle_id
FROM
t_articles
WHERE
xpath_bool(article_xml,'/beatles/beatle[@alive="yes"]');
---Работает.
Только меняю в таблице "alive = "yes" на "alive = "да" и изменяю соответственно параметры поиска - все не работает.
...
Рейтинг: 0 / 0
Postgres и XML. Проблема с поиском
    #34644266
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по умолчанию если не указано другое кодировка символов в XML документе считается UTF-8
попробуй сохранять "да" в UTF-8 либо укажи в заголовке XML кодировку
Код: plaintext
1.
2.
3.
4.
<?xml version="1.0" encoding="windows-1251"?>
<beatles id = "b2">
<beatle instrument = "bass" alive = "yes">paul mccartney</beatle>
<beatle instrument = "drums" alive = "yes">ringo starr</beatle>
</beatles>

ps: в стандарте написано что "Все XML парсеры обязаны поддерживать как минимум UTF-8 и UTF-16."
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Postgres и XML. Проблема с поиском
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]