【问题标题】:adding MySQL Query to PHPMYAdmin将 MySQL 查询添加到 PHPMYAdmin
【发布时间】:2012-06-02 23:52:43
【问题描述】:

我在 Visual Studio 中使用 MYSQL Workbench 创建了一个项目。它工作正常。然后我去我的托管服务提供商并尝试添加存储的过程

错误 SQL查询:

CREATE PROCEDURE spLogin_VerifyUser( IN User VARCHAR( 50 ) , IN Pass VARCHAR( 50 ) , OUT ChurchID INT ) BEGIN DECLARE ChurchIDTemp INT DEFAULT 0;

MySQL 说:

1064 - 您的 SQL 语法有错误;查看与您的 MySQL 服务器版本相对应的手册,了解在第 3 行的 '' 附近使用的正确语法

当我尝试添加以下存储过程时:

create procedure spLogin_VerifyUser(IN User VARCHAR(50),IN Pass VARCHAR(50),OUT ChurchID INT)
begin
DECLARE ChurchIDTemp INT DEFAULT 0;
select idchurch into ChurchIDTemp FROM loginusers
WHERE Username=User and Password=Pass;
select IFNULL(ChurchIDTemp,0) into ChurchID;
end
;;

【问题讨论】:

  • 我正在使用 phpmyadmin btw 尝试添加

标签: .net mysql


【解决方案1】:

是完整版的 MySQL 还是社区版?

社区版是免费的,但不允许存储过程。

(几年前我也遇到过同样的问题)

【讨论】:

  • 我使用社区版本,它适用于存储过程。也许您的问题是 MySQL 的旧版本
  • 很有可能!检查上面的分隔符答案,对我来说是个不错的选择。
  • 他们说的问题是,根据他们的“规则”,我的数据库名称必须是存储过程名称的一部分。虽然我试过这个,但仍然得到同样的错误。
【解决方案2】:

试试

delimiter |
create procedure spLogin_VerifyUser(IN User VARCHAR(50),IN Pass VARCHAR(50),OUT ChurchID INT)
begin
    DECLARE ChurchIDTemp INT DEFAULT 0;
    select idchurch into ChurchIDTemp FROM loginusers
    WHERE Username=User and Password=Pass;

    select IFNULL(ChurchIDTemp,0) into ChurchID;
end;
|

【讨论】:

  • juergen D:我试过你的答案并得到这个错误:#1044 - 用户'getre_admin'@'%'拒绝访问数据库'getreal2_churchweb'
  • @ChrisNorris:您是否以足够的权限运行此脚本?你用的是root用户吗?
  • 我没有使用root..它是一个共享的mysql服务器
  • 原来是isp的权限..他们不允许用户创建存储过程..他们必须自己运行创建脚本
【解决方案3】:

这是一个常见的错误。

您可能已经知道 mySQL 允许过程,但 phpMyAdmin 允许您设计它们。现在,如果您已经在其他地方编写了一个并且希望 phpMyAdmin 简单地执行它,那么请确保:

  1. 您没有免费的社区版 mySQL,因为它不允许存储过程。我相信这是不同版本和 phpMyAdmin 之间的兼容性问题。请在下方查看可能的解决方案。

参考这个:http://tycoontalk.freelancer.com/the-database-forum/117270-phpmyadmin-and-procedures.html

在 PhpMyAdmin 的数据库列表中应该是 information_schema。其中有一个表名 ROUTINES。您可以通过发出

来查询它
select ROUTINE_NAME from ROUTINES;

这将输出存储过程名称的列表。要查看过程,请运行查询

show create procdure [procedure name from above select]

【讨论】:

    猜你喜欢
    • 2017-06-17
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 2016-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多