webForumDet fria alternativet

Om procedur = eof then return false

2 svar · 188 visningar · startad av doggelito

doggelitoMedlem sedan juni 20003 100 inlägg
#1

Tänkte skapa en procedur av denna

Set rs = objConn.execute("Select Interval From Daytbl " & _
"Where Taskid = " & Ta_Taskid & " And Interval = " & Weekday(Loop_date, 2) & " ;")
    If Not rs.Eof Then
	Interval = True
	Else
	Interval = False
    End If

den kommer väl att se ut ungefär:

CREATE PROCEDURE namnet 
@Taskid int,
@Loop_date datetime
AS
exec('
Select Interval From Daytbl
Where Taskid = @Taskid  And Interval =  DatePart(weekday,@Loop_date) ') 

Go

Frågan är: kan man på ett enkelt sätt få en utparameter som är antingen true eller false beroende på om det blir eof eller inte, i så fall hur skriver jag då?

LarsGMedlem sedan dec. 200012 465 inlägg
#2

Det finns inte boolean i Tsql.

CREATE PROCEDURE namnet 
@Taskid int,
@Loop_date datetime
AS
if exists(
Select Interval From Daytbl
Where Taskid = @Taskid  And Interval =  DatePart(weekday,@Loop_date) 
select 1
else
select 0 
Go

Använd inte dynamisk sql om du inte måste.

doggelitoMedlem sedan juni 20003 100 inlägg
#3

Det är uppfattat! :)

Genererad på 374 ms · cache AV · v20260730165559-full.f96bc7eb