webForumDet fria alternativet

sp - hoppa över om vilkor

Databaser & SQLur Databashanterare & SQL

3 svar · 182 visningar · startad av hakan@4u2.se

Medlem sedan aug. 2000333 inlägg
Frågan#1

Hur gör man det här i en SP?

Tack på förhand!

sql = "SELECT id FROM fragor WHERE id = 1
set rs = conn.execute (sql)
if rs.eof then
     ----------kod-----------
end if
Medlem sedan dec. 200012 464 inlägg
#2
if not exists (select 1 from fragor WHERE id = 1)
begin
-- kod
end
Medlem sedan aug. 2000333 inlägg
#3

Tack LarsG!

En följdfråga, om koden körs vill jag att sp:n ska skicka tillbax ett värde eller error
Om inte koden körs ett annat värde , Hur löser jag det?

if not exists (select 1 from fragor WHERE id = 1)
begin
-- kod
end
Medlem sedan dec. 200012 464 inlägg
#4

Det finns lite olika sätt. Du kan antingen skicka tillbaka ett recordset med en post

if not exists (select 1 from fragor WHERE id = 1)
begin
-- kod
select 'Error'
end
else
select 'Annat'

eller så kan du sätta en output parameter

create procedure tysklandvinnerinteVM (@result int output)
as
if not exists (select 1 from fragor WHERE id = 1)
begin
-- kod
set @result =  'Error'
end
else
set @result = 'Annat'

Du kan också använda return-statementet. Om man använder ASP så är det enklast att jobba med recordset, dvs den första varianten. Om man vill ha tag på output-parametrar så måste man använda ett command-objekt.

130 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)