2012-12-03 28 views
2

我在我的數據庫,信息和評論,其結構兩個表如下:奇怪的MYSQL反引號(重音符號)

info (id(int(10)), name(varchar(80)), ...19 other columns.., phone(int(16))); 
comment (id(int(10)), name(varchar(80)), comment(varchar(80)), phone(int(16))); 

當我執行這些SQL查詢:

INSERT INTO info (name, ...19 other columns.., phone) VALUES ('asa', ....., 123456) 

它工作得很好。

但是,當涉及到INSERT INTO comment (name, address, phone) VALUES ('asa', 'asa', 123456),它報告SQL語法錯誤,除非我包圍電話反引號這樣`phone`



老實說,我可以得到所有通過添加反引號完成的事情,但我想爲什麼它的作品。提前致謝!

+0

這只是一個普通的MySQL約定。 –

+2

那麼,「電話」不是mysql中的保留字。你在'comment'表中的列名中是否有區分大小寫的情況? –

+0

什麼是確切的錯誤消息和SQL錯誤代碼? – pilcrow

回答

0

我想象一下,在您嘗試插入的地址中有逗號或其他內容,因此它試圖將超出該逗號的所有內容插入到手機字段中。

0

表結構name,comment, phone

你的SQL命令name,address, phone(地址和註釋是不同的)

檢查所有列和 「插入」 的名字他們之間的配合都沒有。

錯誤消息很重要。請儘可能將其發佈。顯示整個表格列名稱和整個「插入」語句也很重要。