日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

小編給大家分享一下PostgreSQL如何實(shí)現(xiàn)臨時(shí)表,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

在長(zhǎng)嶺等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),成都全網(wǎng)營(yíng)銷(xiāo),成都外貿(mào)網(wǎng)站建設(shè),長(zhǎng)嶺網(wǎng)站建設(shè)費(fèi)用合理。

說(shuō)到臨時(shí)表,使用MySQL的同學(xué)可能不是很常用,尤其是互聯(lián)網(wǎng)領(lǐng)域的,臨時(shí)表在MYSQL 的主從復(fù)制環(huán)境中使用臨時(shí)表本身是有缺陷的(這還的扯到程序當(dāng)中去,解釋起來(lái)比較復(fù)雜)。今天的主題是Postgresql 的臨時(shí)表,Postgresql 的臨時(shí)表本身是事帶有隔離性的,與ORACLE 不同的是,PostgreSQL的臨時(shí)表本身更徹底,在SESSION失效后,表的定義都會(huì)消失,ORACLE 則不是,表的定義不會(huì)消失。這也是兩種數(shù)據(jù)庫(kù)在臨時(shí)表上的區(qū)別。

我們可以下載做一個(gè)測(cè)試,我們開(kāi)兩個(gè)窗口

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

在此之外,我們?cè)陂_(kāi)一個(gè)窗口

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

首先證明了每個(gè)session 中的臨時(shí)表都是獨(dú)立的,在別的SESSION 中是看不到的。

另外PostgreSQL 中的臨時(shí)表還有一些相關(guān)方便的設(shè)置,在創(chuàng)建時(shí)指定臨時(shí)表的在什么時(shí)候消失或者清理數(shù)據(jù)。

相關(guān)postgresql 可以在 commit 中進(jìn)行設(shè)置例如

ON COMMIT DELETE ROWS;
ON COMMIT DROP;
ON COMMIT PRESERVE ROWS;

這三種分別代表不同的含義,一個(gè)是在SESSION內(nèi),如果COMMIT 就直接將臨時(shí)表中的行刪除 , DROP 是直接commit 后就將表刪除,最后是即使commit 也保留表,直到session結(jié)束。

另外POSTGRESQL 中的并行掃描,對(duì)臨時(shí)表是無(wú)效的。還有一個(gè)有意思的事情時(shí),如果你在同一個(gè)事務(wù)中創(chuàng)建了同名的臨時(shí)表 和 實(shí)體表,則你訪問(wèn)的和操作的都是臨時(shí)表優(yōu)先。

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

另外有一個(gè)地方需要討論的是,臨時(shí)表在復(fù)雜事務(wù)中到底幫了我們多少,

 臨時(shí)表可以降低多表進(jìn)行關(guān)聯(lián)造成的查詢復(fù)雜性和性能的問(wèn)題

例如:臨時(shí)表可以在程序快速調(diào)用存儲(chǔ)過(guò)程中,分解對(duì)大表的訪問(wèn)和查詢,將中間的結(jié)果存儲(chǔ)在臨時(shí)表中,而不是多個(gè)大表進(jìn)行關(guān)聯(lián),如果我們僅僅需要查詢大表中1%的記錄,同時(shí)可以通過(guò)條件來(lái)現(xiàn)將大表1%的數(shù)據(jù)或更少的數(shù)據(jù)存儲(chǔ)在臨時(shí)表里面,在進(jìn)行相關(guān)的連接,聚合,等操作,會(huì)大大減少例如鎖等待,死鎖,等可能性。

另外和有些數(shù)據(jù)庫(kù)不同,PG的臨時(shí)表會(huì)創(chuàng)建在你當(dāng)前操作的數(shù)據(jù)庫(kù)中,并且以t 開(kāi)頭進(jìn)行命名(這里指的是在臨時(shí)表的物理存儲(chǔ)空間的名字)

所以更好的利用歷史表,能讓你的例如存儲(chǔ)過(guò)程,乃至是程序設(shè)計(jì)都能提升一個(gè)層次,當(dāng)然如果濫用歷史表,在不恰當(dāng)?shù)膱?chǎng)景進(jìn)行使用,則會(huì)事倍功半的結(jié)果。

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

PostgreSQL如何實(shí)現(xiàn)臨時(shí)表

看完了這篇文章,相信你對(duì)“PostgreSQL如何實(shí)現(xiàn)臨時(shí)表”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


本文標(biāo)題:PostgreSQL如何實(shí)現(xiàn)臨時(shí)表
文章源于:http://www.dlmjj.cn/article/pjojdd.html