#database #db2
#База данных #db2
Вопрос:
У меня есть таблица, в которой есть столбец типа данных xml. Я хочу найти размер данных, вставленных пользователем в этот столбец. DB2 показывает, что длина этого столбца равна 0.
Как я могу найти размер данных, которые присутствуют в столбце типа xml в таблице в базе данных DB2?
Комментарии:
1. Для чего? Какая у вас платформа и версия DB2?
2. это на компьютере с Linux. не могу сказать о версии, но это не та старая версия.
Ответ №1:
Возникла та же проблема.
Поскольку XML в DB2 является временным типом данных, он хранится в его иерархической форме. Итак, что вам нужно сделать, это сериализовать xml-содержимое (поскольку оно хранится в «проанализированной» форме) и вывести его в сериализованный тип данных (например, CLOB).
Возьмем, к примеру, таблицу xmltable
со столбцом content
типа XML:
SELECT xmltable.*, XMLSERIALIZE(xmltable.content AS CLOB(20M))
FROM xmltable
Убедитесь, что инициализируйте CLOB достаточно большим, иначе вы получите ошибку 22001.