【问题标题】:Create Procedure MySQL Error By No Description创建过程 MySQL 错误,无描述
【发布时间】:2014-09-24 16:25:05
【问题描述】:

我正在尝试创建一个基本程序并在此基础上构建一个更复杂的程序。

我创建了一个基本脚本,但从 PHPMyAdmin 收到一个没有描述的错误。

在 HeidiSQL 中运行时,它显示好像它运行正确但状态为 0 查询运行。

/* 受影响的行:0 找到的行:0 警告:0 持续时间为 0 查询:0.000 秒。 */

这是我的代码:

DELIMITER $$

CREATE DEFINER = `root`@`%`

CREATE PROCEDURE t1()
BEGIN
    SELECT 'HELLO WORLD';
END

DELIMITER ;

艾米能帮我克服这个障碍真是太棒了。

【问题讨论】:

  • 我不确定,但创建过程并不是真正运行查询,是吗?所以也许输出就好了。你能用这个程序吗?

标签: mysql sql stored-procedures


【解决方案1】:

您必须使用定界符 $$ 完成您的过程代码并删除该过程的 Create 语句

试试这个:

DELIMITER $$

CREATE DEFINER = 'root'@'%'

PROCEDURE t1()
BEGIN
    SELECT 'HELLO WORLD';
END
$$
DELIMITER ;

确保您的根用户有权运行您的程序。如果您收到权限错误,请尝试:

grant all on *.* to 'root'@'%' identified by 'password' with grant option;

【讨论】:

  • 谢谢。奇怪的是。您的代码在 Heidi 中有效,但在 PHPMyAdmin 中无效。给我一个像这样的错误...#1044 - 用户'root'@'127.0.0.1'对数据库'information_schema'的访问被拒绝
  • 你需要给root用户权限,试试这个:在.上将所有权限授予'root'@'127.0.0.1',由'password'标识,带有授予选项;
  • 再次感谢您的 cmets。你最后的评论给了我一个灯泡。我试图在 information_schema 数据库上创建我的过程。这样的平民。再次感谢。
猜你喜欢
  • 1970-01-01
  • 2014-05-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多