sql中的like操作,以下這個問題,關於like在delete中的使用.
千萬要注意的.如果like條件爲空,會清空你的表,like在與select配合使用時,不注意這個問題也不會出現問題,假如我們做搜索,當條件爲空時,這樣寫:
select id,title,content from table where title like '%手機%';
這樣會把含有"手機"的信息查詢出來,但如果搜索時,用戶不填寫任何條件,那此時的SQL會變成
select id,title,content from table where title like '%%';
這樣搜索出來的結果是全部的信息,而like在與delete 一起使用時,就要注意了,前天做了一個包含關鍵詞進行刪除的操作,語句這樣寫:
delete table where title like '%手機%';
這樣可以把標題中含有“手機”的那條信息刪除,但是如果傳入的參數爲空,語句便變成了這樣:
delete table where title like '%%';
這樣,可以刪除整個表了,這是測試提出來的bug,嚇了我一跳,於是以後記住了,由於之前的like與select 搭配習慣了,沒有想到這個BUG,下次一見到like與delete合作時,就要不心了,首先要判斷傳入要刪除的條件是不是爲空。寫在這裏,以提醒自己吧!