webForumDet fria alternativet

sp & dynamisk kolumn

Webbutveckling

5 svar · 362 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

Kan man inte göra så här? Kan man göra om den?

CREATE PROCEDURE dbo.sp_getCategory 
@Column nvarchar(10)

AS
Select Categoryid, Categoryname
From tblCategory 
Where @Column = 1
Order By Categoryname Asc
Medlem sedan juni 200032 967 inlägg
#2

Man kan använda dynamisk SQL i en stored procedure, men det rekommenderas inte. Proceduren kan inte förkompileras då, och, det blir som att ställa frågan direkt.

Måste du göra så?

Medlem sedan dec. 200012 464 inlägg
#3

Detta indikerar en mindre lämplig databasdesign.

Medlem sedan juni 20003 076 inlägg
#4

@nders skrev:

Måste du göra så?

Förmodligen inte!
Så här kör jag nu(bara för att jag inte löst frågan ovan):

CREATE PROCEDURE dbo.sp_getCategoryActivity

AS
Select Categoryid, Categoryname
From tblCategory 
Where Activity = 1
Order By Categoryname Asc

CREATE PROCEDURE dbo.sp_getCategoryDocument

AS
Select Categoryid, Categoryname
From tblCategory 
Where Document = 1
Order By Categoryname Asc

Känns som man borde kunna slå ihop dessa. :)

Medlem sedan juni 20003 076 inlägg
#5

LarsG skrev:

Detta indikerar en mindre lämplig databasdesign.

Det nog mer troligt att det är mina begränsade sqlkunskaper som ställer till detta! :)

Medlem sedan dec. 200012 464 inlägg
#6

Du kan ju ha en if i din procedur

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)