存储过程

1:

CREATE PROCUDURE DELETE_MATCHES

    (IN P_PLAYERNO INTEGER)

BEGIN

    DELETE

    FROM

    WHERE PLAYERNO=P_PLAYERNO

END

2:

BEGIN

    BEGIN

         BEGIN

         END;

    END;

END

3:

CREATE PROCEDURE TEST

     (OUT NUMBER1 INTEGER)

BEGIN

     DECLARE NUMBER2 INTEGER DEFAULT 100;

     SET NUMBER1=NUMBER2;

END

CALL TEST(@NUMBER)

SELECT @NUMBER

3:

CREATE PROCEDURE DIFFERENCE

     (IN P1 INTEGER,IN P2 INTEGER,OUT P3 INTEGER)

BEGIN

     IF P1>P2 THEN

            SET P3=1;

     ELSEIF P1=P2 THEN

            SET P3=2;

     ELSE

            SET P3=3;

    END IF;

END

4:

CREATE PROCEDURE AGE

   (IN START_DATE DATE,

    IN END_DATE    DATE,

    OUT YEARS       INTEGER,

    OUT MONTHS      INTEGER,

    OUT DAYS        INTEGER)

BEGIN

   DECLARE NEXT_DATE, PREVIOUS_DATE DATE;

   SET YEARS = 0;

   SET PREVIOUS_DATE = START_DATE;

   SET NEXT_DATE = START_DATE + INTERVAL 1 YEAR;

   WHILE NEXT_DATE < END_DATE DO

      SET YEARS = YEARS + 1;

      SET PREVIOUS_DATE = NEXT_DATE;

      SET NEXT_DATE = NEXT_DATE + INTERVAL 1 YEAR;

   END WHILE;

   SET MONTHS = 0;

   SET NEXT_DATE = PREVIOUS_DATE + INTERVAL 1 MONTH;

   WHILE NEXT_DATE < END_DATE DO

      SET MONTHS = MONTHS + 1;

      SET PREVIOUS_DATE = NEXT_DATE;

      SET NEXT_DATE = NEXT_DATE + INTERVAL 1 MONTH;

   END WHILE;

   SET DAYS = 0;

   SET NEXT_DATE = PREVIOUS_DATE + INTERVAL 1 DAY;

   WHILE NEXT_DATE <= END_DATE DO

      SET DAYS = DAYS + 1;

      SET PREVIOUS_DATE = NEXT_DATE;

      SET NEXT_DATE = NEXT_DATE + INTERVAL 1 DAY;

   END WHILE;

END

;

SET @START = '1991-01-12'

;

SET @END = '1999-07-09'

;

CALL AGE (@START, @END, @YEAR, @MONTH, @DAY)

;

计算两个日期之间的年数、月数和天数。

5:

CREATE PROCEDURE WAIT

   (IN WAIT_SECONDS INTEGER)

BEGIN

   DECLARE END_TIME INTEGER

      DEFAULT NOW() + INTERVAL WAIT_SECONDS SECOND;

WAIT_LOOP: LOOP

      IF NOW() > END_TIME THEN

         LEAVE WAIT_LOOP;

      END IF;

   END LOOP WAIT_LOOP;

END

创建存储过程,在指定的时间内部响应。

6:

leave相当于break

iterate相当于continue,不过后边都得加响应的语句块

转载于:https://www.cnblogs.com/macula7/archive/2010/06/25/1960421.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值