Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 具有多个更新的MySQL过程_Php_Mysql_Stored Procedures - Fatal编程技术网

Php 具有多个更新的MySQL过程

Php 具有多个更新的MySQL过程,php,mysql,stored-procedures,Php,Mysql,Stored Procedures,有人知道这里出了什么问题吗- 以下代码在我的本地服务器上工作-使用MySQL workbench执行:- DELIMITER $$ CREATE DEFINER=`root`@`localhost` PROCEDURE `namechange`(IN oldname VARCHAR(20),IN newname VARCHAR(20)) BEGIN UPDATE liquidfinger.users SET username = newname WHERE username = oldname

有人知道这里出了什么问题吗- 以下代码在我的本地服务器上工作-使用MySQL workbench执行:-

DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `namechange`(IN oldname VARCHAR(20),IN newname VARCHAR(20))
BEGIN
UPDATE liquidfinger.users SET username = newname WHERE username = oldname LIMIT 1;
UPDATE liquidfinger.markers SET username = newname WHERE username = oldname;
UPDATE liquidfinger.photos SET user = newname WHERE user = oldname;
UPDATE liquidfinger.mail SET to_name = newname WHERE to_name = oldname;
UPDATE liquidfinger.mail SET from_name = newname WHERE from_name = oldname;
END$$
DELIMITER ;
但是我不能在我的网站上创建这个过程,这个网站由GoDaddy托管,使用phpMyAdmin。 我收到的错误消息如下:-

MySQL说:#1064-您的SQL语法有错误;请检查 与右边的MySQL服务器版本相对应的手册 使用“UPDATE liquidfinger.markers SET username=newname”附近的语法 其中username=oldname;在第3行“向上”

第二次更新始终是问题开始的点,因此它不喜欢多个更新。 GoDaddy MySQL服务器版本为:-服务器版本:5.5.41-cll-lve-MySQL社区服务器(GPL) 最新的MySQL版本是5.6.25

有什么想法吗


谢谢

好吧,我要让它工作了。我以前尝试过在phpMyAdmin中使用SQL选项卡,但它不起作用,但我再次尝试,省略了“DEFINER=…”,它起了作用。因此,我只能断定phpMyAdmin(?)中存在某种缺陷,但之前我曾尝试使用MySQL workbench导出和导入sql文件,但也没有成功(?)
案例结束-我不确定是否应该勾选我自己的答案?

我的结尾没有错误,过程执行得很好…您可以尝试从过程中删除DEFINER=
root
@
localhost
?Aman-您无法以phpMyAdmin提供的形式控制它。仅有两个选项是“定义器”和“调用器”。请尝试使用SQL选项卡,并在运行查询时创建它。。