
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 02.09.2003, 14:14 
 | 
|||
|---|---|---|---|
  
  | 
|||
Рекурсивные СТОРЕД ПРОЦЕДУРы С КУРСОРАМИ  | 
|||
| 
 #18+ 
  
    
  Хотел написать рекурсивную процедурку но не тут то было. Проблема состоит в том что в процедуре отривается курсор, из которого я фетчу в цикле результаты и запихиваю их как параметри к той же процедуре. И есть следующий ерор : The cursor specified in an OPEN statement is already open. а можно что-бы курсор создавался локально только для процедури а не для всех? Спасибо всем код проседуры CREATE PROCEDURE DeleteOP ( IN pIdO BIGINT, IN pIdP BIGINT ) LANGUAGE SQL BEGIN DECLARE exist_idProperty BIGINT; DECLARE exist_subproperty CURSOR FOR SELECT idP FROM OPViews WHERE idO=pIdO AND ParentProperty=pIdP; DELETE FROM cOP WHERE idO = pIdO AND idP = pIdP; OPEN exist_subproperty; SET exist_idProperty=0; WHILE NOT exist_idProperty IS NULL DO SET exist_idProperty=NULL; FETCH exist_subproperty INTO exist_idProperty; IF NOT exist_idProperty IS NULL THEN CALL SaveObjectProperties ( pIdO , exist_idProperty); END WHILE; CLOSE exist_subproperty; ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 03.09.2003, 15:54 
 | 
|||
|---|---|---|---|
  
  | 
|||
Рекурсивные СТОРЕД ПРОЦЕДУРы С КУРСОРАМИ  | 
|||
| 
 #18+ 
  
    
  В процедурных курсорах я ничего не понимаю (и не хочу понимать), но суть, дела, как я понимаю, такова. Надо удалить из cOP некоторый набор записей. Замечу, что в DB2 вместо  Код: plaintext 1. 2. можно более наглядно писать Код: plaintext 1. 2. Нам же нужно удалить набор записей - это можно оформить как Код: plaintext 1. 2. а вот это НекотороеViewИлиUDF делаем рекурсивным. Навскидку для меня тело выглядит примерно как Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. здесь могут быть ошибки, но общая идея должна быть понятна. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 03.09.2003, 16:38 
 | 
|||
|---|---|---|---|
  
  | 
|||
Рекурсивные СТОРЕД ПРОЦЕДУРы С КУРСОРАМИ  | 
|||
| 
 #18+ 
  
    
  СПАСИБО БОЛЬШОЕ ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 04.09.2003, 04:25 
 | 
|||
|---|---|---|---|
Рекурсивные СТОРЕД ПРОЦЕДУРы С КУРСОРАМИ  | 
|||
| 
 #18+ 
  
    
  В v 7.2 есть ограничение на вложенные вызовы процедур = 16. Вопрос к тем, кто юзает v 8 - ограничение осталось? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=43&tablet=1&tid=1606518]:  | 
    0ms | 
get settings:  | 
    8ms | 
get forum list:  | 
    12ms | 
check forum access:  | 
    3ms | 
check topic access:  | 
    3ms | 
track hit:  | 
    57ms | 
get topic data:  | 
    10ms | 
get forum data:  | 
    2ms | 
get page messages:  | 
    35ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 276ms | 
| total: | 407ms | 

    | 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.