最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Postgresql 數(shù)據(jù)庫轉(zhuǎn)義字符操作

 更新時(shí)間:2021年01月28日 10:40:59   作者:fang·up·ad  
這篇文章主要介紹了Postgresql 數(shù)據(jù)庫轉(zhuǎn)義字符操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

產(chǎn)生問題

Postgresql數(shù)據(jù)庫運(yùn)行下面insert命令

insert into mapping_mac_brand(_id,mac,brand) values(777,'D86595','Toy\'s Myth Inc.')

提示下面的警告:

Warning: nonstandard use of \' in a string literal

HINT: Use '' to write quotes in strings or use the escape string syntax(E...')

解決辦法

1.名詞解釋

string literal :字符串字面量

escape string:轉(zhuǎn)義字符串

escape character:轉(zhuǎn)義字符

Escape Sequence:轉(zhuǎn)義字符串

轉(zhuǎn)義字符:

所有的ASCII碼都可以用“\”加數(shù)字(一般是8進(jìn)制數(shù)字)來表示。而C中定義了一些字母前加"\"來表示常見的那些不能顯示的ASCII字符,如\0,\t,\n等,就稱為轉(zhuǎn)義字符,因?yàn)楹竺娴淖址?,都不是它本來的ASCII字符意思了。

在Java中,不管是String.split(),還是正則表達(dá)式,有一些特殊字符需要轉(zhuǎn)義, 這些字符是 ( [ { / ^ - $ ¦ } ])。

Java中轉(zhuǎn)義方法為字符前面加上"\\",這樣在split、replaceAll時(shí)就不會(huì)報(bào)錯(cuò)了; 不過要注意,String.contains()方法不需要轉(zhuǎn)義。

但是對(duì)于下面表格指定的字符,還是一個(gè)\即可轉(zhuǎn)義。比如\n。

2.常見的轉(zhuǎn)義字符

字母前面加上反斜線"\"來表示那些不能顯示的ASCII字符.稱為轉(zhuǎn)義字符.如\0,\t,\n等,就稱為轉(zhuǎn)義字符,因?yàn)楹竺娴淖址?,都不是它本來的ASCII字符意思了。

所有的轉(zhuǎn)義字符和所對(duì)應(yīng)的意義:

轉(zhuǎn)義字符

意義

ASCII碼值(十進(jìn)制)

\a

響鈴(BEL)

007

\b

退格(BS) ,將當(dāng)前位置移到前一列

008

\f

換頁(FF),將當(dāng)前位置移到下頁開頭

012

\n

換行(LF) ,將當(dāng)前位置移到下一行開頭

010

\r

回車(CR) ,將當(dāng)前位置移到本行開頭

013

\t

水平制表(HT) (跳到下一個(gè)TAB位置)

009

\v

垂直制表(VT)

011

\\

代表一個(gè)反斜線字符''\'

092

\'

代表一個(gè)單引號(hào)(撇號(hào))字符

039

\"

代表一個(gè)雙引號(hào)字符

034

\0

空字符(NULL)

000

\ddd

1到3位八進(jìn)制數(shù)所代表的任意字符

三位八進(jìn)制

\xhh

1到2位十六進(jìn)制所代表的任意字符

二位十六進(jìn)制

3.解決方法

1.修改數(shù)據(jù)庫配置,讓數(shù)據(jù)庫支持\作為轉(zhuǎn)義字符

早期Postgresql普通字符串中的\是作為轉(zhuǎn)義字符對(duì)待的,所以\\最終會(huì)認(rèn)為是\。但是這是不符合SQL標(biāo)準(zhǔn)的,所以在PG 9.1及以后,普通字符串中的\不會(huì)被任務(wù)是轉(zhuǎn)義字符,而E'xx\x'中的\才會(huì)被當(dāng)作是轉(zhuǎn)義字符。

為了使以前的代碼可以在新的PG版本中運(yùn)行,便有了standard_conforming_strings這個(gè)選項(xiàng),這個(gè)選項(xiàng)默認(rèn)是on,表示按照SQL標(biāo)準(zhǔn)處理字符串,當(dāng)設(shè)置為off時(shí),按照PG的舊版本處理字符串。運(yùn)行下面命令,開啟這個(gè)選項(xiàng)即可:

ALTER ROLE xx IN DATABASE yy SET standard_conforming_strings TO off;

2. 用新版本支持的轉(zhuǎn)義字符。''或者 E'',將含有轉(zhuǎn)義的字符串放在單引號(hào)里面

'\\' 或者 E'\\'

補(bǔ)充:PG特殊字符的轉(zhuǎn)義

實(shí)例1

imos=# select * from test;
 name 
------
 c_d
 ab
 _b_c
(3 rows)

imos=# select * from test where name like '_b%';
 name 
------
 ab
 _b_c
(2 rows)

imos=# select * from test where name like 'd_b%' escape 'd';
 name 
------
 _b_c
(1 row)
imos=# select * from test where name like '\_b%' ;
 name 
------
 _b_c
(1 row)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • 淺談PostgreSQL和SQLServer的一些差異

    淺談PostgreSQL和SQLServer的一些差異

    這篇文章主要介紹了淺談PostgreSQL和SQLServer的一些差異,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Postgresql限制用戶登錄錯(cuò)誤次數(shù)的實(shí)例代碼

    Postgresql限制用戶登錄錯(cuò)誤次數(shù)的實(shí)例代碼

    這篇文章主要介紹了Postgresql限制用戶登錄錯(cuò)誤次數(shù)的實(shí)例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Postgresql 截取字符串的案例

    Postgresql 截取字符串的案例

    這篇文章主要介紹了Postgresql 截取字符串的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Docker環(huán)境實(shí)現(xiàn)PostgreSQL自動(dòng)備份的流程步驟

    Docker環(huán)境實(shí)現(xiàn)PostgreSQL自動(dòng)備份的流程步驟

    本文詳細(xì)介紹了如何在Ubuntu系統(tǒng)中安裝Docker,然后在Docker容器內(nèi)安裝和配置PostgreSQL數(shù)據(jù)庫,接著,重點(diǎn)講解了如何在PostgreSQL中安裝和配置pg_rman工具,用于數(shù)據(jù)庫的備份和恢復(fù)操作,文章還涵蓋了創(chuàng)建定時(shí)備份任務(wù)以及刪除備份的步驟,需要的朋友可以參考下
    2024-11-11
  • Postgresql鎖機(jī)制詳解(表鎖和行鎖)

    Postgresql鎖機(jī)制詳解(表鎖和行鎖)

    這篇文章主要介紹了Postgresql鎖機(jī)制詳解(表鎖和行鎖),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 史上最全PostgreSQL?DBA最常用SQL

    史上最全PostgreSQL?DBA最常用SQL

    這篇文章主要介紹了PostgreSQL?DBA最常用SQL?,主要包括背景及常用查詢語句,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • Linux CentOS 7源碼編譯安裝PostgreSQL9.5

    Linux CentOS 7源碼編譯安裝PostgreSQL9.5

    這篇文章主要為大家詳細(xì)介紹了Linux CentOS 7源碼編譯安裝PostgreSQL9.5的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • PostgreSQL導(dǎo)出數(shù)據(jù)庫表(或序列)的結(jié)構(gòu)和數(shù)據(jù)實(shí)例代碼

    PostgreSQL導(dǎo)出數(shù)據(jù)庫表(或序列)的結(jié)構(gòu)和數(shù)據(jù)實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于PostgreSQL導(dǎo)出數(shù)據(jù)庫表(或序列)的結(jié)構(gòu)和數(shù)據(jù)的相關(guān)資料,你可以使用pg_dump命令來導(dǎo)出PostgreSQL數(shù)據(jù)庫中的表結(jié)構(gòu)和數(shù)據(jù),需要的朋友可以參考下
    2023-10-10
  • PostgreSQL處理時(shí)間段、時(shí)長轉(zhuǎn)為秒、分、小時(shí)代碼示例

    PostgreSQL處理時(shí)間段、時(shí)長轉(zhuǎn)為秒、分、小時(shí)代碼示例

    最近在操作數(shù)據(jù)庫時(shí),遇到頻繁的時(shí)間操作,每次弄完了就忘了,今天痛定思痛,下定決心對(duì)postgres的時(shí)間操作進(jìn)行一下總結(jié),這篇文章主要給大家介紹了關(guān)于PostgreSQL處理時(shí)間段、時(shí)長轉(zhuǎn)為秒、分、小時(shí)的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • 安全高效的PostgreSQL數(shù)據(jù)庫遷移解決方案

    安全高效的PostgreSQL數(shù)據(jù)庫遷移解決方案

    PostgreSQL數(shù)據(jù)庫是一款高度可擴(kuò)展的開源數(shù)據(jù)庫系統(tǒng),支持復(fù)雜的查詢、事務(wù)完整性和多種數(shù)據(jù)類型由于各種業(yè)務(wù)需求,企業(yè)常常需要將數(shù)據(jù)在不同的云平臺(tái)或私有環(huán)境之間遷移,所以本文小編給大家介紹了安全高效的PostgreSQL數(shù)據(jù)庫遷移解決方案,需要的朋友可以參考下
    2023-11-11

最新評(píng)論

武义县| 竹溪县| 南通市| 延吉市| 镇坪县| 盐池县| 金华市| 安仁县| 百色市| 玉门市| 将乐县| 邵阳市| 富源县| 蕲春县| 舒城县| 兰溪市| 门头沟区| 桦南县| 漯河市| 潍坊市| 武邑县| 延庆县| 德钦县| 蓝山县| 宝应县| 元朗区| 大埔县| 宁都县| 渭南市| 彭泽县| 墨玉县| 莱州市| 平潭县| 宜宾县| 平陆县| 和龙市| 恩施市| 金塔县| 宁蒗| 栾川县| 临夏县|