sql查詢語句怎么寫 MySQL中單引號(hào)和反引號(hào)的區(qū)別是什么?
MySQL中單引號(hào)和反引號(hào)的區(qū)別是什么?直接上栗子啦,表中有個(gè)字段使用了MySQL的關(guān)鍵字,例如有個(gè)字段名稱為delete,那么在操作這個(gè)字段時(shí)就要用··反引號(hào)引起來,否則就會(huì)報(bào)錯(cuò)。By the wa
MySQL中單引號(hào)和反引號(hào)的區(qū)別是什么?
直接上栗子啦,表中有個(gè)字段使用了MySQL的關(guān)鍵字,例如有個(gè)字段名稱為delete,那么在操作這個(gè)字段時(shí)就要用··反引號(hào)引起來,否則就會(huì)報(bào)錯(cuò)。
By the way,MySQL不建議使用關(guān)鍵字,但是我還是用了,為什么,因?yàn)槲沂切率?,還用了數(shù)據(jù)ORM框架(sequelize),又剛好這個(gè)ORM框架會(huì)使用反引號(hào)包裹字段,所以一直也沒出問題,有一次直接使用sql語句操作表時(shí)出錯(cuò)了,最后還是使用了反引號(hào)才執(zhí)行通過。
我是用nodejs做項(xiàng)目,有沒有同路的
mysql那為什么非變量,單引號(hào)要轉(zhuǎn)義呢?
沒有這個(gè)要求吧。
一般性的原則:單引號(hào)里面的單引號(hào)要轉(zhuǎn)義,雙引號(hào)里面的雙引號(hào)要轉(zhuǎn)義,而單引號(hào)里面的雙引號(hào),雙引號(hào)里面的單引號(hào)都是無需轉(zhuǎn)義的,三種情況的例子是:
一、
$sql="select * from a where name="dog""
二、
$sql="select * from a where name="dog""
三、
$sql="select * from a where name="dog""
$sql="select * from a where name="dog""
怎么向MySQL數(shù)據(jù)庫插入單引號(hào)或雙引號(hào)?
--mysql值中需要單引號(hào)使用“"”insert into mytable(text) values("I"m Sail!")MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),目前屬于 Oracle 旗下產(chǎn)品。MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在 WEB 應(yīng)用方面,MySQL是最好的 RDBMS (Relational Database Management System,關(guān)系數(shù)據(jù)庫管理系統(tǒng)) 應(yīng)用軟件。MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。MySQL 軟件采用了雙授權(quán)政策,分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),一般中小型網(wǎng)站的開發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫。由于其社區(qū)版的性能卓越,搭配 PHP 和 Apache 可組成良好的開發(fā)環(huán)境。
sql查詢語句中的單引號(hào),雙引號(hào),加號(hào)是什么意思?
sql查詢語句中的單引號(hào)和雙引號(hào)可用于引用"字符串"常量,加號(hào)可作為算數(shù)"加法"運(yùn)算符或做"連接符"使用,但是它們應(yīng)用于不同的數(shù)據(jù)庫時(shí)還存在著不少差異,大家需要留意。
例如ACCESS數(shù)據(jù)庫和MySQL數(shù)據(jù)庫都支持用單引號(hào)或雙引號(hào)引用字串常量,而MSSQL數(shù)據(jù)庫則只支持用單引號(hào)引用字串常量。
又比如ACCESS數(shù)據(jù)庫和MSSQL數(shù)據(jù)庫支持 號(hào)即可作為加法運(yùn)算符也可以作為連接運(yùn)算符使用,而MySQL數(shù)據(jù)庫則只支持 號(hào)做加法運(yùn)算,它不支持做連接符使用,如需實(shí)施字串連接必須使用concat函數(shù)。
例如:
1)select * from t1 where col1="ABC"
2)select * from t1 where col1="ABC"
語句1和2對(duì)于Access數(shù)據(jù)庫和MySQL數(shù)據(jù)庫都是合法的。MSSQL則只有語句1合法,語句2會(huì)報(bào)錯(cuò)。
3)select col1 col2 from t1
語句3對(duì)于對(duì)于ACCESS和MSSQL數(shù)據(jù)庫來說,如果兩個(gè)字段都是數(shù)字類型的話,數(shù)據(jù)庫引擎會(huì)做加法運(yùn)算,否則會(huì)將做連接符使用合并兩字段的值;而MySQL只會(huì)對(duì)加號(hào)做算數(shù)加法運(yùn)行,如需連接多個(gè)字段值則須要使用concat函數(shù),例如語句4
4)select concat(col1 ,col2) from t1