Kann einen out-Parameter mit einem DataReader zurückgeben

9

ExecuteReader Ich kann DataReader zurückgeben, aber der Parameter out gibt 0 zurück.

ExecuteNonQuery Ich kann den Parameter out (mit dem korrekten Wert) abrufen, aber% code_de gibt keine ExecuteNonQuery zurück.

Hier ist das Verfahren, um Kontext zu geben:

SQL-Abfrage:

%Vor%

Gibt es eine Möglichkeit, wie ich einen DataReader sowie den DataReader -Parameter zurückgeben kann, oder soll ich für jeden zwei separate Prozeduren erstellen?

C # -Code:

%Vor%     
Pierre Nortje 17.08.2015, 14:11
quelle

1 Antwort

5

Der Wert für Ihren Ausgabeparameter wird im Stream von SQLServer AFTER zurückgegebenen Resultsets (ich glaube, dass dies auch für den Rückgabewert gilt). Das bedeutet, dass Sie den Wert erst sehen werden, wenn Sie alle Zeilen aus dem DataReader gelesen haben (oder schließen, glaube ich). Ein Ausgabeparameter, der die Anzahl der Zeilen in der Ergebnismenge angibt, ist daher wenig hilfreich.

Das folgende Codefragment zeigt jedoch die Reihenfolge der Operationen, die Sie verwenden sollten:

%Vor%     
user957902 17.08.2015 14:26
quelle

Tags und Links