Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
коллеги, вынужденно переполз с MSSQL на Postgre. Столкнулся со следующей ситуацией. Создаю вьюху, использую ее в процедурах - далее, если возникает необходимость эту вьюху изменить, приходится грохать сначала процедуру, которая ее использует - менять вьюху и заново создавать процедуру. На MS такой проблемы не было - можно было спокойно внести изменения во view и на связанные объекты это никак не влияло. Можно ли как то объехать эту ситуацию? Может как-то каскадно обновлять все связанные объекты? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 12:54 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
А вам без изменения структуры view никак? Ну, тогда используйте EXECUTE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 13:03 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
К сожалению, в процессе разработки многое приходится менять - добавляется например какое-то поле в таблицу на которую вьюха опирается и нужно его добавить или в самой вьюхе нужно некое вычисляемое поле прописать. EXECUTE может решить ряд проблем в теле процедуры, но есть ситуации когда приходится возвращать SET OF view из хранимки -и в этом случае те же грабли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 13:12 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
ну тут ведь и такой момент есть: допустим есть такая вот функция: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 14:10 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
aov а допустим вы добавили во вьюху ещё f4 - или ещё интереснее - грохнули f2. и как быть тогда с вашей функцией постгресу? ну дак я ж не отказываюсь модифицировать процедуру при изменении вьюхи -вопрос лишь в том, что я не могу вьюху изменить без убиения связанной хранимки. Вот как раз такая последовательность операций в MS не вызывает никаких противоречий - изменил вьюху, потом свободно редактируй процедуры. Не знаю у кого как, но у меня достаточно громоздкий проект и таких вот процедур подвязанных на одну вьюху может быть гораздо больше чем одна - и все их приходится убивать для того, чтобы добавить столбец или изменить его тип ((. - Очень отвлекает такое шаманство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 14:25 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
aovи там ещё возможно будет в плпгскл при возврате setof не париться с return next - а писать return select... И ещё и вроде как при этом перфоменс лучше будет. return select ... - должно быть приятная штука, потому как set of мне не шибко нравится - хотя может не привык еще ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 14:35 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
Известная тема (я нарывался на изменение типа - Type, который использовался в процедурах). На мой взгляд, это слабое место постгреса - в остальном он мне нравится. В оракле пакет (процедура) стали бы просто невалидными. В постгресе видимо у процедур нет статусов, и поэтому для подстраховки сделали такую фишку. Это мое предположение - я не настолько хорошо знаю внутренности Постгреса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 15:08 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
да у меня пока что тоже особых претензий к постгресу нет, но озвученная мной тема напрягает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 15:17 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
AndreyVoда у меня пока что тоже особых претензий к постгресу нет, но озвученная мной тема напрягает Вообще, для такого дела у меня написана хранимка, которая вертает взад скрипт с дропами зависимых элементов, созданием вьюхи и пересозданием зависимых элементов. Остается в этом скрипте только вьюху поправить как надо и почесал. Где-то у меня даже валялась хранимка, которая таблицу через дроп пересоздает. Понадобилось, чтобы табличка была не просто табличкой, а наследницей чего-то базового. Констрейнтов на таблу было более 500 и восстанавливались они минут 20, но ништяк, работало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2007, 06:01 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
Kruchinin Pahan Вообще, для такого дела у меня написана хранимка. тоже пришел к такому решению - других вариантов действиетльно пока не наблюдается - может быть появится в каком-нибудь GUI автоматизация такой задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2007, 14:30 |
|
||
|
редактирование зависимых вьюх
|
|||
|---|---|---|---|
|
#18+
AndreyVo Kruchinin Pahan Вообще, для такого дела у меня написана хранимка. тоже пришел к такому решению - других вариантов действиетльно пока не наблюдается - может быть появится в каком-нибудь GUI автоматизация такой задачи. EMS обещали в 4-ой версии добавить эту фичу. Сам не проверял, потому как стоит 3.8 официально купленная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2007, 05:54 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=34856575&tid=2004945]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
71ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 401ms |

| 0 / 0 |
