通过zapier调用存储过程,但没有插入行

时间:2019-01-19 22:37:59

标签: mysql phpmyadmin cpanel zapier

我们在Mariadb服务器上拥有mysql数据库,使用myphpadmin对其进行管理,并使用Zapier来管理数据流。

作为测试,我在数据库中创建了一个简单的存储过程,该过程将插入新行,并将具有某些值的行返回到具有PK(自动递增)的表中。

DELIMITER $$
CREATE DEFINER=`massageo`@`localhost` PROCEDURE `add_customertest`(IN 
`INName` VARCHAR(255), IN `INPhone` VARCHAR(255), IN `INEmail` VARCHAR(255))
BEGIN

insert into customer (Name,Phone,Email)
values(INName,INPhone,INEmail);
SELECT * FROM customer WHERE Name = INName;
END$$
DELIMITER ;

当我从myphpadmin服务器端调用该过程时,它会按预期工作,并在新行中插入包含PK自动增量的新值。

现在,Zapier具有一个名为“ MySQL”的集成,该集成具有一个名为“通过自定义查询查找行”的操作。当我以root用户身份连接并调用存储的操作

call massageo_MYSQL_TEST4.add_customertest('INName','INEmail','INPhone')

我在Zapier中没有收到错误。它将新行与新的customerId(自动递增)一起返回,就像已经创建了该行一样。但是当我查看phpmyadmin时,该行尚未创建。

Zapier说他们看不到为什么没有插入行,只是看到存储过程的调用成功。我还尝试了与Integromat的Zapier类似的服务,该服务具有称为“调用存储过程”的集成。在这里,它也很完美。我将Zapier的IP列入了白名单,作为远程​​主机,所以现在我不知道该怎么办。

我花了很多时间试图找到答案,但是没有运气。我找到了这个: 1

我认为这可能与它有关,但是我无法通过Cpanel给用户更多特权。

我希望有人能帮助我指导正确的方向。

1 个答案:

答案 0 :(得分:0)

我相信这是因为您的事务未正确提交(数据库语言已保存),并且我想是因为您说您正在使用一个名为“查找...”的操作,听起来像只读事务。尝试使用用于插入/更新数据的操作,我对Zapier并不十分了解,但是似乎有一种New Row操作应该可以工作。

也许最后的选择部分将无法工作,但我想您需要使用触发器