1. 程式人生 > >[樂意黎原創]mysql中關鍵字key導致不能插入資料的問題

[樂意黎原創]mysql中關鍵字key導致不能插入資料的問題

在mysql 中插入,無意中欄位名稱有 key, 試了半天,沒見資料庫中有插入記錄。

如下:

INSERT into jreport_nls.nlstable(key, value, version, type, more) VALUES('name',' aerchi','','','')

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key, value, version, type, more) VALUES('name',' aerchi','','','')' at line 1


修改如下:在key的頭上加上兩點(反引號,它在鍵盤的~這個鍵上, 左TAB 製表鍵上), 即可解決.

1. 錯誤寫法:INSERT into jreport_nls.nlstable(key, value, version, type, more) VALUES('name',' aerchi','','','') 報錯,就因為key是關鍵字。

2. 正確寫法:INSERT into jreport_nls.nlstable(`key`, value, version, type, more) VALUES('name',' aerchi','','','')  結果搞定。

另外說明下:雖然value和這些關鍵字insert into values key等等的顏色一樣,但是它不是關鍵字。

PHP程式碼  收藏程式碼
  1. INSERT into jreport_nls.nlstable(`key`, value, version, type, more) VALUES('name',' aerchi','','','')  

這樣可以插成功的。 

PHP 程式碼  收藏程式碼
  1. 上面都是針對mysql的關鍵字的。  
  2. 如果是sqlserver的話,關鍵字是用[] --> 中括號, 來代替mysql裡面的``。