webForumDet fria alternativet
Logga in / Bli medlem

Utparametrar i procedur

Databaser & SQL

5 svar · 396 visningar · startad av Zaiman

Medlem sedan dec. 20014 239 inlägg
Trådstart#1

Har sökt men ej funnit så här kommer en fråga. Varför får jag inte ut mina output parametrar? Får bara NULL värde när jag matar in rätt värden i inparametrarna.
DB = SQL 2005

Det är säkert bara jag som inte kan... Har inte jobbat med procedurer tidigare och ska precis börja lära mig... Det är säker pinsamt enkelt. :r

ALTER PROCEDURE [dbo].[DoLogin] 
	-- Add the parameters for the stored procedure here
	@epost nvarchar,
	@losenord nvarchar,
	@id int output,
	@bh int output
	
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	SELECT @id = id, @bh = bh FROM tabellen WHERE epost = @epost AND losenord = @losenord
END
Medlem sedan dec. 200012 464 inlägg
#2

Varför har du längden 1 på dina inparametrar?

Medlem sedan dec. 20014 239 inlägg
#3

Längden 1 ?

Måste man specificera längden typ "nvarchar(50)" ? För att det ska fungera?

Hmm provar medans jag väntar på svar...

Medlem sedan dec. 20014 239 inlägg
#4

Aha..

Tack LarsG !!

Tyvärr har jag läst mitt exempel på internet och där var inte längden deklarerad. Är det nytt för 2005?

Den fungerande koden:

ALTER PROCEDURE [dbo].[DoLogin] 
	-- Add the parameters for the stored procedure here
	@epost nvarchar(50),
	@losenord nvarchar(50),
	@id int output,
	@bh int output
	
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
SET NOCOUNT ON;

    -- Insert statements for procedure here
	SELECT @id = id, @bh = bh FROM tabellen WHERE epost = @epost AND losenord = @losenord
END
Medlem sedan dec. 200012 464 inlägg
#5

Nej då, så har det alltid varit i SQL server. Om du inte anger någon längd för karaktärstyper så blir det 1.

Medlem sedan dec. 20014 239 inlägg
#6

Ok

Så han jag lärt mig något nytt idag igen :-)

309 ms totalt · 4 externa anrop · v20260731065814-full.7d626504
166 ms — deklarationer (db)
0 ms — hämta statistik (cache)
140 ms — hämta tråd, inlägg och bilagor (db)
160 ms — ändringar (db)