0
我有一个问题关于存储的过程,所以我有这个程序保存:Oracle存储过程在PHP处理
CREATE OR REPLACE PROCEDURE WELTESADMIN.TOTALFABRICATION
(SUBCONT IN VARCHAR, PROJECT IN VARCHAR, TOTALFABRICATIONRESULT OUT NUMBER) AS
BEGIN
SELECT FABRICATION.MARKING + FABRICATION.CUTTING + FABRICATION.ASSEMBLY + FABRICATION.WELDING +
FABRICATION.DRILLING + FABRICATION.FINISHING
INTO TOTALFABRICATIONRESULT
FROM FABRICATION
WHERE SUBCONT_ID = SUBCONT
AND PROJECT_NAME = PROJECT;
END;
和IM的处理,在PHP等,
$subcontValue = "RIYANTO";
$projectValue = "PROCESSHOUSE";
$sql = "BEGIN TOTALFABRICATION(:SUBCONT, :PROJECT); END;";
$stmt = oci_parse($conn, $sql);
oci_bind_by_name($stmt, ":SUBCONT", $subcontValue);
oci_bind_by_name($stmt, ":PROJECT", $projectValue);
oci_define_by_name($stmt, "TOTALFABRICATIONRESULT", $result);
oci_execute($stmt);
echo $result;
我相信,提供的所有变量都是正确的,连接是好的,并且可以在SQL PLUS 中处理,而不是在im端获得这个错误,
警告:oci_execute():ORA-06550:第1行,第7列:PLS-00306:在调用'TOTALFABRICATION'时出错的数量或类型参数ORA-06550:第1行,第7列:PL/SQL:语句忽略在C:\ XAMPP \ htdocs中\ WeltesInformationCenter \ newEmptyPHP.php上线39
感谢sylvain的建议 – marmar 2014-09-23 03:10:21