Пост-ГРЭС тип данных XML

Вы ищете наследование сущностей

Перепишите свой код примерно так

/** @MappedSuperclass */
class Base
{
...
}

На самом деле, это часть Doctrine, вот что официально Документация гласит

Преобразованный суперкласс - это абстрактный или конкретный класс, который предоставляет постоянное состояние объекта и информацию отображения для его подклассов, но сам по себе не является объектом. Как правило, целью такого сопоставленного суперкласса является определение информации о состоянии и отображении, которая является общей для нескольких классов сущностей.

BLOCKQUOTE>

12
задан user16120 20 April 2009 в 17:53
поделиться

2 ответа

В общем, преимущества те же, что и для любого другого типа данных, и почему у вас вообще есть типы данных, кроме текстовых:

  • Целостность данных
    Вы можете хранить только действительные (хорошо, правильно сформированные) значения XML в столбцах типа xml.
  • Тип безопасности
    Вы можете выполнять только те операции со значениями XML, которые имеют смысл для XML.

Одним из примеров является функция xpath () ( XML Path Language ), которая работает только со значениями типа xml, а не с текстом.

Характеристики индексации и производительности запросов не лучше и не хуже, чем, скажем, тип текста на данный момент.

11
ответ дан 2 December 2019 в 05:55
поделиться

Сейчас самое большое, что вы можете получить от полей XML по сравнению с необработанным текстом, это XPath. Поэтому, если у вас было что-то похожее на

CREATE TABLE pages (id int, html xml);

, вы могли бы получить заголовок страницы 4 к

SELECT xpath('/html/head/title/text()', html) FROM pages WHERE id = 4;

. Сейчас поддержка XML довольно ограничена, но стала намного лучше в 8.3, текущие документы находятся по тексту ссылки

15
ответ дан 2 December 2019 в 05:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: