[SQL ] 預存語法組合的問題

作者: justlike5566 (5566天下無敵)   2014-05-26 11:47:29
內容/問題描述:用sqlserver2008r2連接網頁代入參數
create PROCEDURE [dbo].[AllList]
@it varchar(5),
@sqlStr varchar(MAX)
AS
BEGIN
IF @it='全選'
BEGIN
SET @sqlStr='SELECT * FROM dbo.cdTest'
END
ELSE
begin
SET @sqlStr=@sqlStr+ ' WHERE it=(SELECT DISTINCT code FROM
dbo.miTest WHERE code=@it)'
END
END
EXEC @sqlStr
傳入的值如果選項沒選任何一頂 就為全選(確定)
miTest的code 會對上cdTest的it
但是在測試時都找不到 請問這樣有寫錯嗎?
作者: scpisces (失敗的勇氣。)   2014-05-28 00:00:00
子查詢的where改為code='''+@it+'''

Links booklink

Contact Us: admin [ a t ] ucptt.com