MySQL存储过程基本使用

jopen 11年前

MySQL存储过程基本使用实例

create procedure pro_gc_error_ticket(in parameter integer)  begin      DECLARE  no_more_products, quantity_in_stock INT DEFAULT 0;  -- 最后一行标识      DECLARE  prd_code  VARCHAR(255);  -- ID      DECLARE  flight_no VARCHAR(255);      DECLARE  cur_product CURSOR FOR   -- 定义游标--------------BEG               select meta_services_ticket_id,meta_flight_no                from meta_services_ticket                where state = 'create' limit 0,3;-- 定义游标------END      DECLARE  CONTINUE HANDLER FOR NOT FOUND  SET  no_more_products = 1;  -- 最后一行标识设置      OPEN cur_product;  -- 打开游标    IF parameter=1 then   REPEAT  -- 遍历结果集      FETCH cur_product INTO prd_code,flight_no;          update meta_services_ticket set meta_flight_no = 'updateValue'           where meta_services_ticket_id = prd_code;      UNTIL  no_more_products = 1   END REPEAT;   END IF;  CLOSE  cur_product;  -- 关闭游标  end          -- 辅助SQL  show procedure status;              -- 查看存储过程  drop procedure pro_gc_error_ticket; -- 删除存储过程  call pro_gc_error_ticket(1);        -- 调用存储过程