Re: Simple Stored Procedure funktioniert mal und funktioniert mal nich



Hi!

"Uwe Ricken" <anonymous@xxxxxxxxxxxxx> schrieb im Newsbeitrag
news:unn4bXAcFHA.2124@xxxxxxxxxxxxxxxxxxxxxxx
> Hallo Jan,
>
>> Hier wird die Prozedur _immer_ ordnungsgemäß mit einem Returnvalue
>> beendet.
> Das stimmt nicht. Deine PROC gibt keinen RETURN-Value zurück sondern
> den Output läßt Du über eine OUTPUT-Variabel liefern.
>
> Ein Return-Value in einer SP ist immer vom Datentyp int
> Eine Return-Variable sollte in einer SP immer deklariert sein.
> Verzichte auf die Verwendung von Variablen, die Du für die
> Übergabe von Werten an die SP verwendest.
>
> Beispiel [FALSCH]
> CREATE PROC dbo.myProc
> @Test int
> AS
> SET NOCOUNT ON
>
> SET @Test = 1
> RETURN @Test
>
> SET NOCOUNT OFF
>
> Beispiel [RICHTIG]
> CREATE PROC dbo.myProc
> @Test int
> AS
> SET NOCOUNT ON
>
> DECLARE @RetValue int
> SET @RetValue = @Test
>
> RETURN ISNULL(@RetValue, 0)
> SET NOCOUNT OFF
>
>
> Die zweite Variante funktioniert bei mir schon seit mindestens 8 Jahren
> fehlerfrei ;-)
> --

Die 2. Variante ist zweifellos "richtiger". Also, bevor Missverständnisse
auftreten ;): mein eigentliches Ziel ist es, eine "stinknormale" Prozedur zu
schreiben, an die ich 3 Parameter übergeben kann, welche ich anschliessend
in einer SELECT-Anweisung auswerte etc.. Die Parameter selbst sollen dabei
gar nicht zurückgegeben werden. Das hatte ich jetzt nur so gemacht, damit
ich überhaupt ein Returnvalue hab. Es sollte ursprünglich eine Tabelle
zurückgegeben werden. Nur wie ichs auch mache, das Problem bleibt bestehen
:/.

Gruß,
Jan


.



Relevant Pages

  • Re: Simple Stored Procedure funktioniert mal und funktioniert mal nich
    ... Ein Return-Value in einer SP ist immer vom Datentyp int ... Eine Return-Variable sollte in einer SP immer deklariert sein. ... CREATE PROC dbo.myProc ... SET NOCOUNT OFF ...
    (microsoft.public.de.sqlserver)
  • Re: Bcp and temp tables
    ... Here is the proc: ... bcp "SET FMTONLY OFF EXEC pubs.dbo.Kristoffer" queryout ... without SET NOCOUNT ON with the same results. ... > Tibor Karaszi, SQL Server MVP ...
    (microsoft.public.sqlserver.programming)
  • Re: Stop DTS execution
    ... Include SET NOCOUNT ON as the first statement in your proc: ... CREATE PROC StorProc ... >>SQL Server MVP ...
    (microsoft.public.sqlserver.programming)
  • Re: Help - stored procedure not returning a recordset
    ... > Remember to SET NOCOUNT OFF at the end of the proc too ... The setting only lasts for the scope of the proc (or the proc that ... I always SET NOCOUNT ON and out of n stored procedures I have, ...
    (microsoft.public.inetserver.asp.db)