mysql的單引號[ ' ],雙引號[ " ]和esc下面的反勾號[ ` ]的區別
阿新 • • 發佈:2019-01-24
這兩天寫sql的時候,發現別名什麼的喜歡直接使用雙引號, 可是好像有時候用雙引號會報錯,或者單引號會報錯, 所以詳細把這三個符號區分了一下.
單引號 '
和雙引號 "
都可以表示字串,所以沒有太多的區別 , 在平時用的時候是沒問題的(windows)
SELECT "abc"
SELECT 'abc'
查詢的結果都是:
所以都代表字串
至於Esc鍵下面的[ ` ]和單引號 [ ’ ],在linux下和windows下不同,linux下不區分,windows下區分。
單引號( ’ )或雙引號主要用於 字串的引用符號
資料庫、表、索引、列和別名用的是引用符是反勾號(‘`’)
我們再試試
SELECT `abc`
結果是
[SQL]SELECT `abc`
[Err] 1054 - Unknown column 'abc' in 'field list'
找不到這個列, 說明反勾號 ` 還是指的表, 索引 ,別名, 列名
我們來看看NavicatPremium自動生成的sql指令碼:
可以看到表名都是[ ` ],字串都是[ ’ ] , 所以大家也在寫sql語句的時候, 最好也要按照這種規範來寫