尝试在 phpmyadmin 中执行 MYSQL 存储过程时出错

Posted

技术标签:

【中文标题】尝试在 phpmyadmin 中执行 MYSQL 存储过程时出错【英文标题】:Getting an error while trying to execute MYSQL stored procedure in phpmyadmin 【发布时间】:2018-07-08 04:39:36 【问题描述】:

我创建了下表:

CREATE TABLE Toy
(Toy_ID INT NOT NULL AUTO_INCREMENT,
 Toy_Name VARCHAR(30) UNIQUE NOT NULL,
 Toy_Price NUMERIC NOT NULL,
 PRIMARY KEY (Toy_ID)
)

然后我将值插入到玩具表中:

INSERT INTO Toy (Toy_Name,Toy_Price)
VALUES ('Naruto',25.00);
INSERT INTO Toy (Toy_Name,Toy_Price)
VALUES ('Goku',25.00);
INSERT INTO Toy (Toy_Name,Toy_Price)
VALUES ('Luffy',25.00);

然后我在 phpmyadmin 的 SQL 窗口中输入了以下存储过程:

CREATE PROCEDURE searchtoy (IN toy_no INT)
BEGIN
SELECT * FROM Toy
WHERE Toy_ID = toy_no;
END;

存储过程创建成功。

然后我尝试在 SQL 窗口中执行存储过程,我还在 Delimiter 文本框中添加了 //:

CALL searchtoy(1);

但我收到以下错误:

Error
Static analysis:

1 errors were found during analysis.

Unexpected token. (near ";" at position 17)
SQL query:

CALL searchtoy(1);

mysql said: Documentation

#1305 - PROCEDURE demo.searchtoy does not exist

虽然存储过程创建成功,但仍然显示存储过程不存在。

我哪里做错了? 如果提供解决方案代码将非常有帮助。

【问题讨论】:

【参考方案1】:

它正在demo 模式中寻找searchtoy。检查您创建函数的架构

【讨论】:

以上是关于尝试在 phpmyadmin 中执行 MYSQL 存储过程时出错的主要内容,如果未能解决你的问题,请参考以下文章

在 phpmyadmin 上插入触发器

如何在 phpMyAdmin 中禁用查询分析

在 mysql/phpmyadmin 中上传和显示图像

如何修复此 MYSQL//Phpmyadmin 错误? [复制]

无法从代码插入中间表,但是当从 MySQL 中的 phpmyadmin 执行时,它会正确插入

使用 phpmyadmin 导出/导入 mysql 数据库