#104 [NEW]: query() does not return bind variable in stored procedure call
| From: | blazicek at bof dot sk | Date: | Wed, 15 Oct 2003 15:26:43 +0000 |
| Subject: | #104 [NEW]: query() does not return bind variable in stored procedure call | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-22707@lists.php.net to get a copy of this message | ||
From: blazicek at bof dot sk
Operating system: Linux
PHP version: 4.3.3
PHP Bug Type: DB
Bug description: query() does not return bind variable in stored procedure call
Description:
------------
No value is returned to bind variable, when calling stored procedure,
which returns value in parameter.
Connect type: OCI8
Reproduce code:
---------------
$tmp = ' ';
$query = "BEGIN test('param1',?); END;";
$res = $this->db->query($query, &$tmp);
PROCEDURE TEST(param in varchar2, param2 OUT VARCHAR2)
IS
BEGIN
...
param2 := 'something';
...
END;
Expected result:
----------------
'something' in $tmp
Actual result:
--------------
$tmp is unchanged
It can be solved by adding & in common.php on line 758
$ret = $this->execute($sth, &$params);
When $params are passed by reference, it works fine.
--
Edit bug report at http://pear.php.net/bugs/bug.php?id=104&edit=1
--