Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PostgreSQL Новый топик    Ответить
 Как удалить все BLOB из БД  [new]
комит
Member

Откуда:
Сообщений: 152
Добрый день.


Есть БД, в которой есть таблица, в которой есть поле с типом oid.


Если я это поле проапдэчу и поставлю NULL, то в БД сами блобы все равно остануться.



Вопрос:

Как удалть блобы в такой таблице? чтобы они удалились и из БД?
26 апр 21, 14:20    [22314458]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить все BLOB из БД  [new]
комит
Member

Откуда:
Сообщений: 152
Цель: уменьшить размер БД, за счет вычищения блобов.
26 апр 21, 14:25    [22314462]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить все BLOB из БД  [new]
Melkij
Member

Откуда: Санкт-Петербург
Сообщений: 1285
Выяснить, как данные писались.

Вероятно это Large Object, в таком случае необходим вызов lo_unlink
26 апр 21, 15:27    [22314519]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить все BLOB из БД  [new]
комит
Member

Откуда:
Сообщений: 152
Melkij
Выяснить, как данные писались.

Вероятно это Large Object, в таком случае необходим вызов lo_unlink


Сделсть для каждого в цикле.

Спасибо!
26 апр 21, 15:29    [22314522]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить все BLOB из БД  [new]
Павел Лузанов
Member

Откуда:
Сообщений: 803
комит,

Для этой цели предназначена утилита vacuumlo. Она находит все потерянные большие объекты и удалит их.

Но если у вас всего одна таблица с oid-ами можете и в цикле перебрать.
26 апр 21, 16:52    [22314610]     Ответить | Цитировать Сообщить модератору
Все форумы / PostgreSQL Ответить