Gibt den Wert in der gespeicherten Prozedur SQL Server zurück

8

Ich versuche, eine gespeicherte SQL Server-Prozedur mit ASP zu verwenden:

%Vor%

und der ASP ist

%Vor%

Wenn ich den SP im SQL Server-Terminal ausführen, funktioniert es, aber wenn ich den asp-Code verwende, wenn es ein "neuer Benutzer" ist, bekomme ich keinen Wert zurück, der "index1" zurückgibt

Was kann ich tun?

    
user186585 12.02.2011, 18:56
quelle

2 Antworten

8

Wechsel zu adParamReturnValue, wie die andere Antwort angibt.

Sie müssen auch die erste Ergebnismenge unterdrücken, indem Sie SET NOCOUNT ON verwenden. Außerdem sollten Sie aufhören, @@ IDENTITY zu verwenden, stattdessen SCOPE_IDENTITY verwenden.

%Vor%

Hinweis: Sie können RETURN 0 am Ende sogar weglassen, da 0 das Standard-Rückgabeergebnis ist.

    
RichardTheKiwi 12.02.2011, 21:54
quelle
2

Ihre Parameterrichtung ist adParamOutput (2), sollte aber adParamReturnValue (4):

sein %Vor%

Siehe ParamDirctionEnum , dass CreateParameter dauert.

    
Oded 12.02.2011 19:00
quelle