Пределы на схему PostgreSQL изменяют внутренние транзакции?

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

Редактирование: Я считал бы всю таблицу в массив сначала, таким образом, она не будет неоднократно запрашивать DB. Конечно, это не будет практично, если Ваша таблица будет очень большой.

После того, как структура создается, я должен сделать, глубина сначала пересекает через нее и распечатывает HTML.

нет никакого лучшего фундаментального способа хранить эту информацию с помощью одной таблицы (я мог быть неправым хотя;), и хотел бы видеть лучшее решение). Однако при создании схемы использовать динамично созданные таблицы базы данных тогда Вы открыли совершенно новый мир в жертве простоты и риске ада SQL;).

13
задан babbageclunk 10 July 2009 в 10:09
поделиться

2 ответа

Согласно быстрому grep в документации, эти команды не могут выполняться в транзакциях:

  • кластер
  • фиксация подготовлена ​​
  • создать базу данных
  • создать табличное пространство
  • сбросить
  • ] drop database
  • drop tablespace
  • откат подготовлен
  • вакуум
7
ответ дан 1 December 2019 в 22:40
поделиться
  • nextval и setval операции над последовательностями никогда не откатываются.
  • REINDEX DATABASE
  • REINDEX SYSTEM

Есть статья о транзакционный DDL в PostgreSQL Wiki

8
ответ дан 1 December 2019 в 22:40
поделиться
Другие вопросы по тегам:

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