私はMySql57を使用しています このスクリプトには何が問題なのですか?(私はMySQLの初心者です) エラーコード:1064. SQL構文にエラーがあります。正しい構文が '=' A0001 'の近くで使用されるようにMySQLサーバのバージョンに対応するマニュアルを確認してください。 ELSE BEGIN gubun1 = LEFT(cur_max、0,1); gu 'on line 10何が問題なのですか?
DELIMITER $$
CREATE FUNCTION narae.FN_GET_GUBUN_MAX() RETURNS varchar(100)
BEGIN
DECLARE cur_max varchar(100);
DECLARE gubun1 varchar(1);
DECLARE gubun2 varchar(100);
DECLARE RTN_VAL varchar(100);
SELECT IFNULL(MAX(gubun_code),'A0001') INTO cur_max from gubun_code;
IF cur_max = 'A0001' THEN RTN_VAL = 'A0001';
ELSE
BEGIN
gubun1 = LEFT(cur_max,0,1);
gubun2 =
LPAD(CONVERT(CONVERT(RIGHT(cur_max,4),UNSIGNED)+1,CHAR),4,'0');
RTN_VAL = CONCAT(gubun1,gubun2);
END
RETURN RTN_VAL;
END $$
DELIMITER ;
'set'を試してみてください。 –
THEN SET RTN_VAL = 'A0001'を試してください。ちょうどその代わりに –