當嘗試在數據庫上執行更新時,出現非常奇怪的錯誤。這是在使用MySQL 5.7.19-0ubuntu0.16.04.1的Ubuntu 16.04服務器上。查詢是:MySQL錯誤「以前發現別名」當別名不在查詢中時
UPDATE athlet_teamseason
SET offkeyreturners
='test'WHERE athlet_teamseason
。 id
= 29701;
MySQL的錯誤是:
1064 - 你在你的SQL語法錯誤;檢查對應於您的MySQL服務器版本的手冊,在'offkeyreturners
='測試'附近使用正確的語法'。 id
= 29701' 在行1
我在phpMyAdmin這樣做,它給多一點信息:在分析過程中發現
2個錯誤。
以前發現別名。 (在位置50處的「」附近) 先前發現了別名。 (靠近「‘測試’」在第51位)
如果我直接在phpMyAdmin的用戶界面嘗試此更新(搜索記錄,編輯的字段值,提交表單)它的工作原理,以及顯示的查詢是:
UPDATE athlet_teamseason
SET offkeyreturners
='test'WHERE athlet_teamseason
。 id
= 29701;
看起來是相同的。但是,如果我做了兩者之間的字符串比較,我得到:
因此,儘管它們看起來是一樣的,是有區別的地方。
查詢是從數據庫中的表創建的,使用連接和引用源表中的單元格。例如:!
= 「UPDATE SET athlet_teamseason
offkeyreturners
= '」!&數據I2 & 「'。WHERE athlet_teamseason
id
=」 &數據A2 & 「;」
我有成千上萬的這些,他們都產生相同的錯誤。我在舊服務器上做了幾次,可能是MySQL 5.7的問題?
我猜你的字段中有一些非打印字符。 – Uueerdo
謝謝,這也發生在我身上。我用我的光標鍵在文本上移動以查看是否可以檢測到,但沒有運氣。 –
光標鍵不一定有助於非空白字符;您通常可以獲得更好的結果,以查找與您遇到問題的值相關的LENGTH函數的差異;或者你可能對正則表達式有一些運氣。 – Uueerdo