mysql中一個奇怪的事,mysql奇怪
我資料庫裡面有個表,今天突然打不開了 。。
在phpmyadmin中單擊表 提示 Unknown column 'operator' in 'where clause order' 意思是說沒有operator這個欄位
雖然這個表不能瀏覽資訊了 但是可以查看結構 我點開結構看了一下 確實沒有operator欄位,我突然回想起來以前這個表
好像是有這個欄位的 後來不知道為什麼刪了 ,但是現在這情況也讓我摸不著頭腦啊,沒有就沒有啊 你為啥要報錯呢 ,我表
裡面也沒有毛澤東這個欄位啊 我憑什麼就一定要有operator這個欄位呢。。。
觀察phpmyadmin的地址欄 發現是get方式在傳參,於是想到是不是瀏覽器緩衝,把這個operator條件加進去了,於是清理了瀏覽器緩衝
回來一試,還是無效,我也不管裡面有啥子資料了 ,乾脆把表清空了看,
DELETE FROM `dj_driver_charge` WHERE 1 ; 這行代碼是在phpmyadmin的sql框中執行的,又報錯
上面的紅色錯誤中提示的語句居然把我的語句變成了這樣: DELETE FROM `dj_driver_charge` order by operator limit 1,25 具體怎麼寫的我現在記不得了,
反正大概意思就是根據operator來刪除表中的資料,我就奇了怪了,這個operator那裡冒出來的。。。。
於是把上面那個紅色錯誤語句複製到下面的sql框中 把operator換成了一個存在的欄位
ok 刪除成功 ,現在點擊瀏覽終於不報錯了
總結:個人猜測應該是資料庫本身有緩衝,如果使用資料庫比較多的話 應該很多人都遇到過,之前遇到了一次 我以為是表損壞了。。。直接刪了
重建立 ,這下總算清晰明白了。。
MYSQL的一個奇怪問題
雖然不太懂這個文法
你看是不是這一行
IF (SELECT id FROM zo_user WHERE user=usr)>0 THEN
改成-->
IF ((SELECT id FROM zo_user WHERE user=usr)>0) THEN
加個括弧~
反正報錯就說你語法錯誤...
如果你認為文法實在沒錯,那就是電腦的錯~~~呵呵
那你看看你第2行是不是少個分號?
呵呵,我真不懂這個,只會oracle...
mysql查詢的一個奇怪的問題
............沒有矛盾,樓主你是對describe語句有點理解錯了
第一部分
看你的語句,我估計你是想建立一個資料庫,但是這個資料庫執行個體已經存在的了,所以它回答你database exists
第二部分
describe是描述“表”的。。。按你的意思你可能是想看看bookdb這個資料庫是怎麼樣的,但是你的語句是表達不了這樣的意思的,編譯器按照describe的本來的用法,把你的bookdb理解成一個表,因為你沒有建立過一個表叫bookdb它當然提示說bookdb這個表不存在了