postgresql 如何關(guān)閉自動(dòng)提交
postgresql中默認(rèn)是自動(dòng)提交的
查看是否是自動(dòng)提交:
postgres=# \echo :AUTOCOMMIT on
關(guān)閉自動(dòng)提交:
postgres=# \set AUTOCOMMIT off postgres=# \echo :AUTOCOMMIT off
另一種方式就在會(huì)話(huà)開(kāi)始的時(shí)候以begin開(kāi)始相當(dāng)于關(guān)閉了自動(dòng)提交,以end或者commit結(jié)束就可以了
補(bǔ)充:pg(hgdb)默認(rèn)事務(wù)自動(dòng)提交
默認(rèn)情況下,AUTOCOMMIT(自動(dòng)提交)是開(kāi)著的,也就是說(shuō)任何一個(gè)SQL語(yǔ)句執(zhí)行完畢后,它鎖做的數(shù)據(jù)修改都會(huì)被立即提交,這種情況下每個(gè)語(yǔ)句都是一個(gè)獨(dú)立的事務(wù),一旦 執(zhí)行完畢祁結(jié)果就不可撤銷(xiāo)。
如果你需要運(yùn)行大量的DML語(yǔ)句并且這些語(yǔ)句還未經(jīng)充分測(cè)試,那么自動(dòng)提交功能會(huì)帶來(lái)麻煩,此時(shí)有必要關(guān)閉事務(wù)自動(dòng)移交機(jī)制來(lái)對(duì)數(shù)據(jù)進(jìn)行保護(hù)。
請(qǐng)先關(guān)閉自動(dòng)提交功能:\set AUTOCOMMIT off,然后就可以按需對(duì)事務(wù)進(jìn)行回滾了:
update census.fats set short_name='this is a mistake.';
要回滾事務(wù),請(qǐng)執(zhí)行:
rollback;
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
聊聊PostgreSql table和磁盤(pán)文件的映射關(guān)系
這篇文章主要介紹了聊聊PostgreSql table和磁盤(pán)文件的映射關(guān)系,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01
postgresql數(shù)據(jù)庫(kù) timescaledb 時(shí)序庫(kù) 把大數(shù)據(jù)量表轉(zhuǎn)換為超表的問(wèn)題
這篇文章主要介紹了postgresql數(shù)據(jù)庫(kù) timescaledb 時(shí)序庫(kù) 把大數(shù)據(jù)量表轉(zhuǎn)換為超表,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
PostgreSQL教程(十三):數(shù)據(jù)庫(kù)管理詳解
這篇文章主要介紹了PostgreSQL教程(十三):數(shù)據(jù)庫(kù)管理詳解,本文講解了概述、創(chuàng)建數(shù)據(jù)庫(kù)、修改數(shù)據(jù)庫(kù)配置、刪除數(shù)據(jù)庫(kù)、表空間,需要的朋友可以參考下2015-05-05
postgreSQL使用pgAdmin備份服務(wù)器數(shù)據(jù)的方法
這篇文章主要介紹了postgreSQL使用pgAdmin備份服務(wù)器數(shù)據(jù)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
postgresql 兩表關(guān)聯(lián)更新操作
這篇文章主要介紹了postgresql 兩表關(guān)聯(lián)更新操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01

