sql函数,用于在mysql workbench 8.0中将列中的每个单词大写

dm7nw8vv  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(450)

我试图创建一个函数来对mysql workbench中的每个单词加上大写字母,但总是出现语法错误:sql语法有错误;查看与mysql服务器版本相对应的手册,以获得使用near'deterministic begin declare len int;声明i int;将len=cha'设置为第行
这是我的密码:

delimiter ;;

CREATE FUNCTION caps_first (input varbinary(100))
RETURNS varbinary(100) deterministic

Begin
    declare len INT;
    declare i INT;

    set len = char_len(input);
    set input = lower(input);
    set i = 0;

    while (i<len) do
        if (mid(input,i,1) = '' or i = 0) then
            if (i < len) then
            set input = concat(
                                left(input,i),
                                upper(mid(input, i+1,1)),
                                right(input, len-i-1)
                            );
            end if;
        end if;
        set i = i+1;
    end while;

    return input;
end;
guykilcj

guykilcj1#

大约一个月前,我编写了一个类似的存储过程。请参考这里的文章。如果你想直接使用它,需要花一点功夫来修改它以满足你的需要,但它应该给你一个不错的起点。
我知道这并不是像你要求的那样直接调试,但是比较代码可能会帮助你解决问题。

相关问题