-1
ALTER PROCEDURE [dbo].[uspProcessProfessionalPinRenewal]
@processtype INT ,
@SinglePinNumber NVARCHAR(12) = NULL,
@operatorID INT,
@returnMessage NVARCHAR(35) OUTPUT
AS
.....Php Sql Server procédure stockée
$sqlExecSP = "{CALL uspProcessProfessionalPinRenewal(?,?,?,?)}";
//$sqlExecSP = "{CALL uspStudentGrading(?, ?, ?)}";
// Prepare stored procedure call with three parameters
$sth = $db->getPdo()->prepare($sqlExecSP);
$processtype=1;
$SinglePinNumber=$pin;
$operatorID=Auth::user()->BusinessEntityID;
$retMessage="";
// Bind parameter 1 as IN parameter
// Be sure *not* to set a length to indicate it's an IN parameter
$sth->bindParam(1, $processtype, PDO::PARAM_INT);
$sth->bindParam(2, $SinglePinNumber, PDO::PARAM_STR,12);
$sth->bindParam(3, $operatorID, PDO::PARAM_INT);
$sth->bindParam(4, $retMessage, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 35);
// $sth->bindParam(4, $indexnumber, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 50);
// dd($programcatid . ', ' . $programtypeid . ', ' . $voucherpin . ', ' . $applicationref);
// Call the stored procedure
// print "Executing stored procedure...\n";
$res = $sth->execute();
Au-dessus est l'en-tête de ma procédure stockée et mon code php pour appeler
Mais je reçois l'erreur SQLSTATE [ 22018]: [Microsoft] [Pilote ODBC 11 pour SQL Server] [SQL Server] La conversion a échoué lors de la conversion de la valeur nvarchar '17GS08664006' en type de données int.
S'il vous plaît aider
Montrez-nous pas l'en-tête mais le corps de votre proc – sepupic
Quelle est la valeur '17GS08664006'? Pouvons-nous avoir ce code? C'est peut-être juste une erreur de conversion comme votre erreur dit a échoué à convertir en type de données int – Tomm
l'erreur dit tout. vous envoyez des données avec un mauvais type de données à SP. – Badiparmagi