愈訂愈多 然後積的文章量也就愈來愈大 orz
剛剛在 Jeff 大的 blog 中看到這篇
所以坎尼想到了平常處理 like 指令時 用Parameter的方式
第一次做的時候 對 SqlParameter 能不能用在 like 也有些疑問
經過反覆試驗後 下面就是現在坎尼常用的方法
第一個要點是 SQL 指令
一般來講會這麼下指令 select * from test where id like 'm%'
那變成參數式的寫法要怎麼寫呢?
坎尼只是很簡單的用了 select * from test where id like @id
「百分比符號哩?」『挖藏起來啊~』「金GY捏~~拿出來看看好不好?」
先來看部份程式碼抓圖 (其他不重要的就不抓了

坎尼只是把百分比符號在 addValue 時給加上
當然 各位也可以加上 前後 % 或是 ____ (以下是執行畫面

輸入 t 當然就是只有 t 開頭的客戶會出現

都不輸入就只會跑 % 所以是列出所有的客戶名單
這個做法坎尼用了數十次 目前還未發生副作用
如果有人發現副作用 請來信告知 :p
2 則留言:
試試把欄位改成char或nchar,加上%就會找不到資料囉。
它會很貼心的在查詢字串中補足欄位長度的空白。
hello wavej,
您指的是 SqlParameter 給與的參數型別設定吧 :D
char類型本來就是固定的長度,不足部份 ADO.NET Provider 會補足空白,這是正常的行為喔
至於資料庫裡原本的型別,和查詢給的 Parameter 型別是兩回事,這個坎尼研究一下再另開一篇做說明 :)
張貼留言