我想通过phpmyadmin在mysql中创建过程,它在两个表中插入参数,但phpmyadmin会抛出错误,这是不可能的。
所以我想在notepad ++上尝试编辑程序。你能告诉我他们在文件系统中保存了哪些内容。
我使用xampp在localhost上运行phpmyadmin。
或者,如果使用这两个insert语句创建过程的任何其他选项。
INSERT INTO `table1`(`att1`, `att2`, `att3`)
VALUES (p_att1, p_att2, p_att3);
INSERT INTO `table2`(`att1`, `att2`, `att3`, `att4`, `att5`)
VALUES ('admin','admin', p_att4, p_att5, p_att6)
答案 0 :(得分:0)
正如评论中已经提到的,存储过程不是存储在文件系统上,而是存储在数据库本身的特殊表中。
如果您具有适当的权限,则可以通过发出以下command
来查看过程的定义SHOW CREATE PROCEDURE my_proc;
现在你的程序看起来像这样
DELIMITER $$
CREATE PROCEDURE my_proc
(
IN _att1 VARCHAR(32),
IN _att2 VARCHAR(32),
IN _att3 VARCHAR(32),
IN _att4 VARCHAR(32),
IN _att5 VARCHAR(32)
)
BEGIN
START TRANSACTION;
INSERT INTO table1(att1, att2, att3)
VALUES (_att1, _att2, _att3);
INSERT INTO table2(att1, att2, att3, att4, att5)
VALUES ('admin','admin', _att3, _att4, _att5);
COMMIT;
END$$
DELIMITER ;
这是 SQLFiddle 演示