在網站后臺的開發過程中,站內搜索或是查詢功能是用得比較多的,就要從數據庫里面找尋與客戶所輸入的關鍵詞相類似的文章或是新聞,把這些文章調出來,說白了,就是把有這些類似的記錄顯示出來,那是如何做到的呢?
其實很簡單,使用查詢語句即可搞定:select * from 數據庫表 where 文章內容或文章標題 like 關鍵詞,今天不是研究這個,主要是說說易發生錯誤的細節,數據庫access與sql server兩者在通配符用法上有何區別,要注意些什么。
再回到上面的那句sql語句,假如數據庫表為news,新聞內容的字段名是content,標題字段名為title,用戶輸入了“產品”兩個字,那sql語句為:select * from news where content like "%產品%",記住,除了產品兩字是中文外,其它的都是英文的半角狀態,當然了,實際的網站建設過程中,產品兩字會被變量或函數代替。
如果使用的是access,則like的通配符的整個寫法是這樣的:like "*產品*",百分號在這兒是沒有用的,千萬記住。
如果使用的是sql server,則like寫法為:like "%產品%",星號在這兒是沒有用的,當然也適合于mysql數據庫。
總結一下,access里like的通配符用法中,問號表示任何單一的字符,星號表示零個或多個字符,井號表示任何一個數字,使用like時,access使用星號,sql server使用百分號,互換過來不行。