Хранилище Oracle 12g XmlType в виде двоичного XML (выберите проблему)
Я пытаюсь выбрать XML из БД Oracle12g. XML хранится в таблице (хранилище XMLType в виде двоичного XML), и я не могу создать запрос Select с условием where. Моя проблема в том, что запрос не возвращает ни одной записи. Я использую Oracle SQL Developer 4.1.0.19.
Примеры моих запросов
SELECT OBJECT_VALUE
FROM A_STUDENT_BIN
WHERE existsNode(object_value,'//Student[@RodneCislo="123"]') = 1;
SELECT OBJECT_VALUE
FROM A_STUDENT_BIN
WHERE extract(OBJECT_VALUE, '//Student[@RodneCislo="123"]') IS NOT NULL;
Структура таблицы:
CREATE TABLE a_student_bin OF XMLTYPE XMLTYPE STORE AS BINARY XML;
Вставленный XML
<?xml version="1.0" encoding="windows-1250" ?>
<Vystup>
<Student RodneCislo="123">
<Jmeno>Pepa</Jmeno>
<Prijmeni>Omacka</Prijmeni>
<TitulPred>Ing.</TitulPred>
<TitulZa></TitulZa>
</Student>
</Vystup>
XML был вставлен в БД по запросу:
insert into A_STUDENT_BIN
values (XmlType( bfilename('MYDIR','student.xml'),
nls_charset_id('EE8MSWIN1250') );