La solution à l'erreur lorsque yii appelle la procédure stockée : vérifiez d'abord l'exception levée après l'appel de l'instruction "MYPROC", puis, selon l'invite d'information, ajoutez l'instruction "SET NOCOUNT ON;" procédure stockée.
yii a signalé une erreur lors de l'appel de la procédure stockée :
YII : "Le résultat actif de la requête" est apparu lors de l'appel de la procédure stockée MSSQL2005 ne contient aucun champ. la valeur de retour et utilisez l'instruction suivante pour appeler la procédure stockée "MYPROC" :
DECLARE @return_value int; exec @return_value = MYPROC; select @return_value;
lève l'exception suivante après l'appel (imprimée avec var_dump) : object(CDbException)[50]
public 'errorInfo' =>
array
0 =>
string
'IMSSP' (length=5)
1 =>
int
-15
2 =>
string
'The active result for the query contains no fields.' (length=51)
protected 'message' =>
string
SQLSTATE[IMSSP]: The active result for the query contains no fields.. The SQL statement executed was: DECLARE @return_value int;exec @return_value = MYPROC @ActivityID = :ActivityID ;select @return_value;' (length=257)
D'après les informations suivantes Astuce, j'ai ajouté cette instruction à la procédure stockée et c'est devenu normal :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!