2016-09-21 77 views
1

我想在mysql中創建一個函數來替換html實體或字符串中的其他特殊字符。但我無法讓它工作。我是新的寫作功能。無法獲取簡單的mysql函數來工作

DELIMITER $$ 
CREATE FUNCTION cleanEntities(s varchar(255)) 
RETURNS varchar(255) 
BEGIN 
s = replace(s, '&',char(0x0026 using utf8)) 
s = replace(s, 'ü', char(0xc3bc using utf8)) 
RETURN s$$ 
END 
$$ 

DELIMITER ; 

我不得不刪除;在錯誤信息中,所以& amp等不作爲HTML顯示。

錯誤消息

#1064 - 你在你的SQL語法錯誤;檢查與您的MySQL服務器版本對應的手冊,以便在'= replace(s,'& amp',char(0x0026,使用utf8)')附近使用正確的語法s = replace(s,'& uuml',char(0xc'第4行

+0

定義「無法得到它的工作。」的錯誤?沒有做它應該?火山噴發你靠近? –

+0

添加的錯誤 –

回答

1
DELIMITER $$ 
CREATE FUNCTION cleanEntities(s varchar(255)) 
RETURNS varchar(255) 
BEGIN 
set s = replace(s, '&',char(0x0026 using utf8)); 
set s = replace(s, 'ü', char(0xc3bc using utf8)); 
RETURN s; 
END $$ 


DELIMITER ;