Stai usando VARCHAR
, quindi devi indicare una dimensione massima:
DELIMITER $$
CREATE FUNCTION fixString(input varchar(15)) RETURNS varchar(15)
BEGIN
declare output varchar(15);
SET output = REPLACE(input,'ö','oe');
RETURN output;
END $$
DELIMITER ;