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å?
5 svar · 362 visningar · startad av doggelito
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
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å?
Detta indikerar en mindre lämplig databasdesign.
@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. :)
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! :)
Du kan ju ha en if i din procedur