gpt4 book ai didi

mysql - 无法创建函数 MySQL 语法错误

转载 作者:行者123 更新时间:2023-11-29 21:51:58 28 4
gpt4 key购买 nike

我似乎无法让它正常工作,我总是遇到不同的错误。此时如有任何建议,我们将不胜感激...

CREATE DEFINER=`db`@`localhost` FUNCTION `output_date`(in_date DATE) RETURNS DATE 
READS SQL DATA
BEGIN
DECLARE date_format_index INT;
DECLARE date_format_string VARCHAR;

SELECT s.output_date_format INTO date_format_index FROM config s
SET date_format_string = ( CASE date_format_index WHEN 2 THEN '%d-%m-%Y' WHEN 3 THEN '%m-%d-%Y' ELSE '%Y-%m-%d' END );

RETURN in_date
END

我在尝试处理此函数时使用 DELIMITER $$。

当前错误是...

Error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '; SELECT s.output_date_format INTO date_format_index FROM system_config s SET d'

我的环境是MyEclipse,最新版本。我的MySQL版本是5.2。

最佳答案

您缺少一些分号以及 varchar 的问题,请尝试以下操作:

DELIMITER $$

CREATE DEFINER=`db`@`localhost` FUNCTION `output_date`(in_date DATE) RETURNS DATE
READS SQL DATA
BEGIN
DECLARE date_format_index INT;
DECLARE date_format_string VARCHAR(100); -- obviously change the size

SELECT s.output_date_format INTO date_format_index FROM config s;
SET date_format_string = ( CASE date_format_index WHEN 2 THEN '%d-%m-%Y' WHEN 3 THEN '%m-%d-%Y' ELSE '%Y-%m-%d' END );

RETURN in_date;
END
$$
DELIMITER ;

它在我的盒子上运行。

关于mysql - 无法创建函数 MySQL 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33555111/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com