MySQL添加函数或存储过程,步骤

1.使用数据库,指示到某个数据库
use 数据库名
2.修改mysql标示符
delimiter //
3.执行函数代码:
DROP FUNCTION IF EXISTS `get_customer_contract`;
    CREATE FUNCTION get_customer_contract (customerId INT) RETURNS VARCHAR(50)
    BEGIN
        DECLARE contract_str VARCHAR(100) DEFAULT NULL;
        DECLARE done INT DEFAULT 1;
        DECLARE contract_tmp VARCHAR(50);
        DECLARE contractlist CURSOR FOR SELECT contract_no FROM nash_contract WHERE IF(fact_end_date>='2016-06-12',fact_end_date>='2016-06-12',IF(agreed_end_date>='2016-06-12',agreed_end_date>='2016-06-12',end_date >= '2016-06-12')) AND contract_type=2 AND customer_id=customerId AND state=1;
        DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = NULL;
        SET contract_str='';
        OPEN contractlist;
          FETCH contractlist INTO contract_tmp;
          WHILE (done IS NOT NULL) DO
            SET contract_str = CONCAT(contract_str,contract_tmp,',');
            FETCH contractlist INTO contract_tmp;
          END WHILE;
        CLOSE contractlist;
        RETURN contract_str;
    END;
4.执行双斜线
//
函数添加到对应数据库中

以下如图:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/u013931660/article/details/78136048