我有一个包含很多元素的表单,我的DB人已经生成了一个SP,现在我需要调用该存储过程。我的表单有二十个元素,当我点击提交时,数据必须保存在数据库中。我知道如何在插入查询中执行此操作,但如何调用SP并执行此操作。
有10个表格可以保存数据。
答案 0 :(得分:4)
我从来没有在MySQL中使用过存储过程,但除了使用CALL
作为查询关键字之外,它与“普通”SQL查询没有区别。
而不是:
INSERT INTO table (column1, column2, column3) VALUES ('value 1', 'value 2', 3)
你这样做:
CALL function_name('value 1', 'value 2', 3);
(假设您的存储过程被称为function_name
,并且需要2个字符串参数和一个数字参数。
答案 1 :(得分:1)
PDO有一种通过预处理语句处理存储过程的好方法。我强烈建议使用它而不是使用“简单的SQL”。
<?php
// Calling a stored procedure with an output parameter
$stmt = $dbh->prepare("CALL sp_returns_string(?)");
$stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000);
// call the stored procedure
$stmt->execute();
print "procedure returned $return_value\n";
?>
答案 2 :(得分:0)