I'm trying to create mysql function through PDO execute statement, but it is giving below error
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER $$ CREATE FUNCTION
diff_func
(DATE_STR
VARCHAR(255),COMP_DATE
' at line 1
Code:
DELIMITER $$
CREATE FUNCTION `diff_func` (`DATE_STR` VARCHAR(255),`COMP_DATE` DATETIME,`AGO` INT(11)) RETURNS VARCHAR(255) DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER
BEGIN
DECLARE COMPARE_WITH DATETIME DEFAULT UTC_TIMESTAMP;
DECLARE AGO_STRING VARCHAR(255) DEFAULT NULL;
DECLARE DIFF_STRING VARCHAR(255) DEFAULT NULL;
DECLARE DIFFERENCE_VAL VARCHAR(255) DEFAULT 0;
DECLARE RETURN_STRING VARCHAR(255) DEFAULT NULL;
SET RETURN_STRING = '';
RETURN RETURN_STRING;
END$$
DELIMITER ;