CREATE OR REPLACE PROCEDURE Pro_wzxx
IS
  CURSOR wzxx_cur IS
  SELECT *
    FROM wzxx
   WHERE (wznr1 IS NOT NULL) OR (wznr2 IS NOT NULL) OR ... ; --可不要条件  wzxx_rec wzxx_cur%ROWTYPE;
  mxid NUMBER;
BEGIN  --main
  FOR wzxx_rec IN wzxx_cur LOOP
    mxid := wzxx_rec.id;
    IF (wzxx_rec.wznr1 IS NOT NULL) THEN 
      mxid := mxid+1;
      INSERT INTO wzxx_mx VALUES (wzxx_rec.id,mxid,wzxx_rec.wznr1);
    END IF; 
    IF (wzxx_rec.wznr2 IS NOT NULL) THEN 
      mxid := mxid+1;
      INSERT INTO wzxx_mx VALUES (wzxx_rec.id,mxid,wzxx_rec.wznr2);
    END IF;
    --自己完成去...
  COMMIT;
  END LOOP;
END;