Why can't I use a select to set a procedure variable? It barks out this
error where it hit the line "SET B = SELECT ..."

CREATE DBPROC CLEANSNFLAGSDUPES(IN PREFIX VARCHAR(4), IN MESSAGE
VARCHAR(1000)) AS
VAR FID INTEGER; B VARCHAR(6); NROWS INTEGER;
SET FID = 0;
SET NROWS = 0;
DECLARE C1 CURSOR FOR SELECT * FROM SNFLAGS 
WHERE PREFIX = :PREFIX AND MESSAGE = :MESSAGE AND ACTIVE = 'Y';  
WHILE ($rc = 0) DO
      BEGIN
           FETCH C1 INTO :FID;
           IF $rc = 0 THEN
             BEGIN
               SET B = SELECT BODY FROM SNFLAGS WHERE FLAGID = :FID;
               SET NROWS = SELECT COUNT(*) FROM SNFLAGS 
                                           WHERE PREFIX = :PREFIX AND BODY =
:B 
                                           AND MESSAGE = :MESSAGE AND ACTIVE
= 'Y';
                IF NROWS > 0 THEN
                  BEGIN
                    UPDATE SNFLAGS SET ACTIVE = 'N' 
                           WHERE PREFIX = :PREFIX AND BODY = :B 
                                   AND MESSAGE = :MESSAGE AND ACTIVE = 'Y';

                    UPDATE SNFLAGS SET ACTIVE = 'Y' WHERE FLAGID = :FID;
                  END;  
             END;
       END;
CLOSE C1;


Thanks mucho for the help,

Kev

-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to