1.動態查詢語句
2.sql中佔位符不能在單引號中,否則,會以?進行查詢資料
『%#%』
3.sql中不能使用加號進行字串拼接,加號是用來做運算的
『%』+『d』+』%』
4.mybatis進行拼串,拼串會出現 sql 注入情況 ,例如:「or 1=1」
『%$%』
5.使用內建方法進行拼串
concat(』%』,#,』%』)
6.查詢條件值本身為%,查詢出所有的資料
concat(』%』,#,』%』) => 『%%%』
『%%%』 使用轉譯字元再進行查詢。
7.#和\是乙個意思,表示轉譯。使用#代替\
select * from t_user where username like 『%#%%』 escape 『#』
select * from t_user where loginacct like 『%@%%』 escape 『@』
select * from t_user where loginacct like concat(』%』,』@%』,』%』) escape 『@』
8.常見的sql文,在oracle中,使用兩個豎線用來表示字串拼接,mysql中沒有這樣的語法。
select * from t_user where username like 『%』|| # ||』%』
ACCESS模糊查詢注意事項
access模糊查詢出現的問題,開發中需要注意 在sql server中模糊查詢通常是這樣的select from articletable where authorname like jacky 但是在access中用這條語句執行的時候竟然發現查不出結果,怎麼可能呢?後來查了下資料,發現問題如下 ...
ibatis查詢bug 注意事項
ibatis判斷使用者名稱已被註冊功能實現 1.注意這裡id 設定為integer 因為當資料庫中沒有這條記錄時候返回null,如果對int型的id 進行判斷,會報錯。integer id integer sqlmapclient.queryforobject user.isusernameexis...
C Linq查詢DataTable注意事項
linq查詢時,涉及datatable,查詢結果可能為null,如果直接轉換為新datatable,則會報錯。例如 try catch exception ex 上述程式執行是會報錯 資料來源中沒有 datarow。由於查詢結果沒有資料,導致copytodatatable 方法報錯。此種情況下,需要...