gpt4 book ai didi

php - 运行代码时 MySQL 函数中的语法错误

转载 作者:行者123 更新时间:2023-11-29 21:10:59 24 4
gpt4 key购买 nike

我收到此错误:

#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 '' at line 4

当我在 phpmyadmin 中运行以下代码时,除了第二个声明表达式之外还出现此错误:

unrecognized statement type (near declare)

导致这些错误的原因是什么? (Phpmyadmin、版本等)

create function fnc_generate_url(title_in varchar(250))
returns varchar(250)
begin
declare v_count int;
declare v_return varchar(250);
declare cr_count cursor
for
select count(1) from tbl_page where page_title like concat('%',title_in,'%');

open cr_count;
fetch cr_count into v_count;
close cr_count;

if v_count = 0 then
set v_return = replace(trim(title_in), ' ', '-');
else
set v_return = concat(replace(trim(title_in), ' ', '-'),'-',v_count);
end if;

return v_return;
end;

最佳答案

如果我们使用分隔符,效果很好。

试试这个:

DELIMITER $$
create function fnc_generate_url(title_in varchar(250))
returns varchar(250)
begin
declare v_count int;
declare v_return varchar(250);
declare cr_count cursor
for
select count(1) from tbl_page where page_title like concat('%',title_in,'%');

open cr_count;
fetch cr_count into v_count;
close cr_count;

if v_count = 0 then
set v_return = replace(trim(title_in), ' ', '-');
else
set v_return = concat(replace(trim(title_in), ' ', '-'),'-',v_count);
end if;

return v_return;
end;
$$
DELIMITER ;

关于php - 运行代码时 MySQL 函数中的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36375210/

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