{eyou:include file='banner.htm'/}
PostgreSQL 中的單引號與雙引號用法說(shuō)明
2026-05-05 04:15:41
3521
[摘要] 天津九安特機電工程有限公司(www.hunqingrc.com)在pg中的sql,單引號用來(lái)標識實(shí)際的值,雙引號用來(lái)標識表名table name)或列名column name)等數據庫中存在的值。如,執行一句query:1select "name" from "s

在pg中的單引sql,單引號用來(lái)標識實(shí)際的號雙值,雙引號用來(lái)標識表名(table name)或列名(column name)等數據庫中存在的引號用(yong)法值。

如,說(shuō)明執行一句query:

1select "name" from "students" where "id"='1'

加上引號的單引好處在于,當在程序中進(jìn)行sql拼裝的號雙時(shí)候,可以簡(jiǎn)化對值的引號用ヽ(′ー`)ノ法校驗,同時(shí)又可以避免sql注入。說(shuō)明即在數據庫層面完成了事故的單引避免。

如,號雙同樣執行的引號用法query:

1selヽ(′?`)ノect ";drop table students;" from "students" where "id"='1'

由于被引號框起來(lái),pg只會(huì )認為“;”也是說(shuō)明列名的一部分,而不會(huì )將語(yǔ)句切斷,單引從而順利避免了事故。號雙

補充:PostgreSQL 和 MySQL 關(guān)于單引號、引號??用法雙引號、反單引號的區別

解決方案寫(xiě)在前面:

MySQL 可以使用單引號(')或者雙引號(")表示值,但是 PG 只能用單引號(')表示值,PG 的雙引號(")是表示系統標識符的,比如表名或者字段名。MySQL可以使用反單引號(`)表示系統標識符,比如表名、字段名,PG 也是不支持的。

事情的起因是同事發(fā)現??好像反單引號(`)不能在 PG 中使用。在 MySQL 和 Spark SQL 中,我覺(jué)得用反(fan)單引號是一個(gè)(ge)優(yōu)秀的習慣,所以我以為反單引號標識表名或者字段名應該是標準(好吧,所有的“以為&rdquo(′▽?zhuān)?);都是錯的);確實(shí)感覺(jué)三觀(guān)被顛覆。

然后就是去查了一下,下面貼出官網(wǎng)關(guān)于從 MySQL 遷移 PostgreSQL 的 wiki 的答案,大家如果有遷移上的問(wèn)題(哪怕是思維上的遷移),都可以看這個(gè)鏈接。

MySQ??L uses ' or " to quote values (i.e.?? WHERE name = “John”). This is not the ANSI standard for databases. PostgreSQL uses on??ly sin?gl(/ω\)e quotes for this (i.e. WHERE name = ‘John'). Double quotes are used to quote system identifiers; field names, table names, etc??. (i.e. WHERE “last name” = ‘Smith').

MySQL uses ` (accent mark or backtick) to quote system identifiers, which is(′▽?zhuān)? decidedly no??n-standard.

翻譯??過(guò)來(lái)就是寫(xiě)在前面的解決方??案。

文章來(lái)源:腳本之家

來(lái)源地址:https://www.jb51.net/article??/205143.htm


推薦閱讀

亚洲女同成aV人片在线观看|亚洲www啪成人一区二区麻豆|亚洲国产中日韩精品综合|亚洲国产成人精品一级片|亚洲无码在线视频免费

亚洲女同成aV人片在线观看|亚洲www啪成人一区二区麻豆|亚洲国产中日韩精品综合|亚洲国产成人精品一级片|亚洲无码在线视频免费 连平县| 定州市| 湖北省| 南京市| 三河市| 色达县| 都昌县| 临江市| 高陵县| 怀宁县| 迭部县| 罗源县| 六盘水市| 大安市| 仁怀市| 南皮县| 寿宁县| 新龙县| 临漳县| 神农架林区| 东平县| 长寿区| 平凉市| 广宗县| 林西县| 余干县| 舞阳县| 师宗县| 甘德县| 大理市| 南川市| 安陆市| 宁津县| 通榆县| 大同市| 彩票| 博白县| 仙桃市| 宜兴市| 囊谦县| 铅山县| http://444 http://444 http://444 http://444 http://444 http://444