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

看板Database作者 (5566天下無敵)時間11年前 (2014/05/26 11:47), 11年前編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
內容/問題描述:用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 但是在測試時都找不到 請問這樣有寫錯嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.249.157.14 ※ 文章網址: http://www.ptt.cc/bbs/Database/M.1401076052.A.3D7.html ※ 編輯: justlike5566 (60.249.157.14), 05/26/2014 11:49:15 ※ 編輯: justlike5566 (60.249.157.14), 05/26/2014 11:50:21

05/28 00:00, , 1F
子查詢的where改為code='''+@it+'''
05/28 00:00, 1F
文章代碼(AID): #1JWhbKFN (Database)