Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / -9700 + drop procedue / 6 сообщений из 6, страница 1 из 1
02.04.2009, 18:57
    #35909277
Петров Андрей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
Товарищи можно ли какнибудь подропать все процедуры с указаным именем одной командой?
Чтобы не возникала такая вот ошибка -9700 если параметры к процедуре поменялись а при дропе я их не указываю :-(
...
Рейтинг: 0 / 0
03.04.2009, 09:55
    #35909862
zaiets
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
одной вроде как нет
несколькими - да:
unload to 'dropproc.sql' delimiter ';'
select 'drop procedure '||procname||'('||paramtypes||')'
from sysprocedures where procname = '....'
можно конечно еще и владельца добавить.

dbaccess ....
...
Рейтинг: 0 / 0
03.04.2009, 10:25
    #35909938
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
zaietsодной вроде как нет
несколькими - да:
unload to 'dropproc.sql' delimiter ';'
select 'drop procedure '||procname||'('||paramtypes||')'
from sysprocedures where procname = '....'
можно конечно еще и владельца добавить.

dbaccess ....

У меня на тестовом 11.50 С3 paramtypes отказывается из типа rtnparamtypes преобразовываться в CHAR... Если кто-то одолеет (например, через CREATE CAST :) - прошу поведать об этом достижениии :). После этого воспользоваашись SPL и EXECUTE IMMEDIATE можно будет создать ХП-каннибала :)
...
Рейтинг: 0 / 0
03.04.2009, 10:28
    #35909953
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
АнатоЛойможно будет создать ХП-каннибала :)
поправлюсь - для IDS 11.50C1+
...
Рейтинг: 0 / 0
06.04.2009, 09:29
    #35913583
Тан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
АнатоЛойzaietsодной вроде как нет
несколькими - да:
unload to 'dropproc.sql' delimiter ';'
select 'drop procedure '||procname||'('||paramtypes||')'
from sysprocedures where procname = '....'
можно конечно еще и владельца добавить.

dbaccess ....

У меня на тестовом 11.50 С3 paramtypes отказывается из типа rtnparamtypes преобразовываться в CHAR... Если кто-то одолеет (например, через CREATE CAST :) - прошу поведать об этом достижениии :). После этого воспользоваашись SPL и EXECUTE IMMEDIATE можно будет создать ХП-каннибала :)в lvarchar должно преобразовываться
...
Рейтинг: 0 / 0
06.04.2009, 10:14
    #35913676
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
-9700 + drop procedue
Для IDS 11.50:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
CREATE PROCEDURE "informix".drop_sp_with_all_signature(
  p_procname LIKE sysprocedures.procname
) RETURNING
    LVARCHAR AS dropped_procname
  ; 

  DEFINE v_drop_sp LVARCHAR;
  FOREACH
    SELECT 'DROP PROCEDURE "' || TRIM(owner) || '".' || procname ||
             '(' || CAST(paramtypes AS LVARCHAR) || ');'
      INTO v_drop_sp 
      FROM sysprocedures 
        WHERE procname = p_procname
        
    EXECUTE IMMEDIATE v_drop_sp;
    
    RETURN v_drop_sp
      WITH RESUME;                    

  END FOREACH

END PROCEDURE;

Для предыдущих версий IDS:
прийдётся усложнять результат, упрощая синтаксис :)

Для ТАН:
СПАСИБО :)
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / -9700 + drop procedue / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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