gpt4 book ai didi

MySql:如何在声明语句之前调用存储过程

转载 作者:行者123 更新时间:2023-11-30 22:57:33 24 4
gpt4 key购买 nike

我需要在声明游标之前调用 sp。 sp 填充一个表,然后游标在该表的行中循环。但是 Workbench 不允许在 declare 语句之前调用 sp 或任何其他内容。

create definer=`root`@`%` procedure `usp_tesst`()
begin
declare ordid int;
declare packid int;
declare cstmid int;
declare deltimespanid int;
declare dstrcid int;
declare pcstatus tinyint(1);
declare deliverytime datetime;

declare maxdate datetime;
declare temppackcount int default(0);

call usp_createtemppackages;

-- it says there is a syntax error in here

declare crs cursor for
select * from temppackages....

我应该怎么称呼这个 sp ?

最佳答案

DECLARE 语句必须位于存储过程的最前面。

考虑 - 1) 在调用 usp_tesst 之前调用 usp_createtemppackages 2) 将 usp_createtemppackages 功能集成到 usp_tesst 3) 删除游标并以其他方式迭代表(这也可能会提高性能,因为游标有点慢)。

关于MySql:如何在声明语句之前调用存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25621100/

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