php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #16496 Stored Procedure Parameters is_null issue
Submitted: 2002-04-08 11:54 UTC Modified: 2002-12-24 01:00 UTC
From: arthur dot mcgibbon at btinternet dot com Assigned:
Status: No Feedback Package: MSSQL related
PHP Version: 4.1.2 OS: Win2000
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: arthur dot mcgibbon at btinternet dot com
New email:
PHP Version: OS:

 

 [2002-04-08 11:54 UTC] arthur dot mcgibbon at btinternet dot com
The problem is with executing a stored procedure with a null-value varchar output parameter.

Steps...
1) create any SP that has a varchar(200) input/output param
e.g.
create procedure Test
(
  @TestVarchar varchar(200) = null output
)
as
select @TestVarchar = 'Successful parameter feedback';

2) Run stored procedure using following statements...

$ConnectionObj = mssql_connect($DB_SERVER_NAME, $DB_USER, $DB_PASSWORD);
$aStatement = mssql_init("dbo.test", $ConnectionObj);
mssql_bind($aStatement, "RETVAL", &$RetVal, SQLINT4);
mssql_bind($aStatement, "@TestVarchar", &$Value, SQLVARCHAR, TRUE, TRUE, 200);
$ExecResult = mssql_execute($aStatement);

When PHP executes the SP it defines the parameter as VARCHAR(0) when it should be VARCHAR(200).

I've run SQL Profiler and it shows... 
declare @P1 varchar(0)
set @P1=NULL
exec dbo.test @P1 output
select @P1

when it should be
declare @P1 varchar(200)
set @P1=NULL
exec dbo.test @P1 output
select @P1

If you change the bind statement so that the @TestVarchar parameter is not null then the whole thing works.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-12-07 01:53 UTC] iliaa@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php4-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-latest.zip


 [2002-12-24 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over 2 weeks, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 01:01:30 2024 UTC