powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать множественный ALTER TABLE?
20 сообщений из 20, страница 1 из 1
Как сделать множественный ALTER TABLE?
    #39540076
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребятушки, помогайте, плиз, есть база, в ней хочу изменить тип хранилища на EXTENDED во всех таблицах у столбцов по маске '%rref'
Т.е. почти в каждой таблице есть колонка по имени 'xxxxxxrref', бывает, что и не одна вот у нее-то и надо сменить тип хранилища.
Запрос для одной-то я знаю как делать. ALTER TABLE <table> ALTER <column> SET STORAGE EXTENDED;
Да-да, 1С-ная база))))) postgres 9.6
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540082
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SELECT-ом из системных таблиц сгенерировать набор ALTER-ов и выполнить.
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540083
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tomsv,

Так и выполните одну за одной. Нет никаких проблем.

Чтобы было не так грустно кодогенератор:
Код: sql
1.
2.
3.
4.
SELECT 'ALTER TABLE ' || table_schema || '.' || table_name || ' ALTER ' || column_name || ' SET STORAGE EXTENDED;'
FROM information_schema.columns
WHERE column_name LIKE '%rref'
ORDER BY table_schema, table_name, column_name;


...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540101
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

Спасибо, запрос прошелся по нужным колонкам, но смотрю через PGAdmin, колонки так и остались в PLAIN, вручную на EXTENDED меняется (через тот же pgadmin), тип данных позволяет....
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540103
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tomsv,

так а вы выполнили сгенерированные запросы?
В psql удобненький \gexec есть для этих целей.
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540105
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij,

Я только начинающий в этом плане, поэтому не шарю, как их выполнить, простите.... как это в pgadmin сделать? или в нем нереально?
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540106
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tomsv,

Значит указанные выше операции для Вас преждевременны. Вы не полностью осознаете смысл действий.

Прежде чем делать что-либо сделайте полную резервную копию.

По поводу когоденератора: скопируйте результат выполнения запроса, например, в редактор запросов pgAdmin и выполните как обычный запрос.
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540115
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

Это да, это конечно, всё на копиях)))
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540118
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ursidotomsv,

Значит указанные выше операции для Вас преждевременны. Вы не полностью осознаете смысл действий.

Прежде чем делать что-либо сделайте полную резервную копию.

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

Увы, в жизни так не получается ;-)
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540140
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что меня лично в этом топике больше всего удивляет - никто не задал вопрос "а НАФИГА???"
За 18 лет работы с Postgres мне никогда не надо было это делать (а видел я очень много всего разного).

К автору топика - а что собственно вы пытаетесь этим добиться и зачем?

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540147
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,


на моей памяти кто--то за ширину странички сражался


но прелесть в том , что 1-ска в ррефах хранит сылки -- гуиды. если память не врет. зачем их выносить, да ещё и жать ?
"ниччего не понимаю"
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540150
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qwwq,

Просто тесты, друзья, просто тесты, есть мнение авторитетных людей, что если эти поля поджать, 1с ка 1.5-1.7 раза шевелится быстрее, хоть это и противоречит прямой логике, но она все же есть.... вот я и решил оттестить
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540151
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но это на оочень толстых базах
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540161
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tomsvНо это на оочень толстых базах
я вот тоже шизофазией увлекся (выше читать "ширину записи", конечно же )
но накуа--куа довольно узкое поле жать 7777. к тому ж оно наверняка индексиру-ё-мое.

и там ведь точно ссылки валялись , типа гуидов 7 нет 7
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540176
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk... никто не задал вопрос "а НАФИГА???"...

Исходный вопрос был задан другой. Техническая возможность есть.

По сути Вашего замечания: хочет человек чего-то странного - не запрещено. Вдруг получится что-то интересное.
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540191
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

Спасибо за поддержку, я дико извиняюсь, но еще вопрос: как привести уже существующие данные к новому типу хранилища, надо как-то их считать и записать обратно, я так понимаю?
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540335
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tomsv,

Да, это так :
автор Note that SET STORAGE doesn't itself change anything in the table, it just sets the strategy to be pursued during future table updates

Быстро и грязно - vacuum full.

До этого момента все же нужно ответить на вопрос Максима.
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540398
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

я ж отвечал, правда не максиму, но всё же....


tomsvПросто тесты, друзья, просто тесты, есть мнение авторитетных людей, что если эти поля поджать, 1с ка 1.5-1.7 раза шевелится быстрее, хоть это и противоречит прямой логике, но она все же есть.... вот я и решил оттестить

вам еще раз спасибо
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540404
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

вебинар один умный был, там много полезных (по моему мнению) штук было показано, все попробовал, почти всё работает, решил проверить вот этот вот еще нюанс.... видос выложить не могу по тех.причинам, там чото он закодирован, тока на одном компе смотреть можно и т.д., но если пламенный прям интерес разгорится, могу кусок про это снять телефоном с моника
...
Рейтинг: 0 / 0
Как сделать множественный ALTER TABLE?
    #39540412
tomsv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursido,

вебинар конкретно по связке 1с+postgres
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать множественный ALTER TABLE?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]