mysql 함수 생성이 안됩니다..
본문
delimiter || DROP FUNCTION IF EXISTS strip_tags|| CREATE FUNCTION strip_tags( x longtext) RETURNS longtext LANGUAGE SQL NOT DETERMINISTIC READS SQL DATA BEGIN DECLARE sstart INT UNSIGNED; DECLARE ends INT UNSIGNED; IF x IS NOT NULL THEN SET sstart = LOCATE('<', x, 1); REPEAT SET ends = LOCATE('>', x, sstart); SET x = CONCAT(SUBSTRING( x, 1 ,sstart -1) ,SUBSTRING(x, ends +1 )) ; SET sstart = LOCATE('<', x, 1); UNTIL sstart < 1 END REPEAT; END IF; return x; END; || delimiter ;
출처: https://webee.tistory.com/entry/Mysql-에서-HTML-태그-삭제-함수striptags [Red Roof Garage]
위의 코드로 strip_tags 라는 함수를 만들려고 하는데요.
그대로 복붙했을 때 좀 더 버전이 높은 mysql에서는 함수가 생성이 됐는데
cafe24에 설치된 mysql에 저대로 실행을 하면 오류가 뜹니다.
그런데 무슨 오류인지 설명은 뜨지않고 그저 오류라고만 뜨네요..ㅠㅠ
해결방법 알려주시면 정말 감사하겠습니다.
답변 1
웹호스팅 사용시 mysql 함수 생성 권한이 없는 경우가 대부분입니다
루트 권한이 있는 경우에 아래의 명령어를 입력하여 설정하셔야 합니다
SET GLOBAL log_bin_trust_function_creators = 1;