无法在 mariaDB 10.6.8 中创建函数,但可以在 10.2 中使用

Not able to creat funtion in mariaDB 10.6.8, but was working in 10.2

DELIMITER ;;
CREATE FUNCTION `substrCount`(s varchar(65530), ss VARCHAR(255)) RETURNS mediumint(8) unsigned 
BEGIN
DECLARE count MEDIUMINT(4);
DECLARE offset MEDIUMINT(4);
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = NULL;
SET count = 0;
SET offset = 1;
REPEAT
    IF NOT ISNULL(s) AND offset > 0 THEN
        SET offset = LOCATE(ss, s, offset);
        IF offset > 0 THEN
            SET count = count + 1;
            SET offset = offset + 1;
        END IF;
    END IF;
UNTIL ISNULL(s) OR offset = 0 END REPEAT;
RETURN count;
END ;;
DELIMITER ;

它在 10.2 MariaDB 中运行良好,但在 10.6.8 中出现语法错误

SQL 错误 (1064):您的 SQL 语法有误;查看与您的 MariaDB 服务器版本对应的手册,了解在 'offset MEDIUMINT(4); 附近使用的正确语法; DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s = N...' 在第 4 行 */

Offset 在 10.6 中成为保留关键字,现在需要引用(或更改您的变量名称)。