日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

修改字段类型_PostgreSQL 关于字段类型的修改 谣言与止谣

發布時間:2024/7/5 数据库 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 修改字段类型_PostgreSQL 关于字段类型的修改 谣言与止谣 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

PostgreSQL 在9.2 之前是要面臨一個指責,就是在更改字段類型的時候帶來的不堪,假象你有100萬行的數據,其中一個字段是varchar(20) ,你想將其更改為 varhcar(30), 這可能就要造成一個災難,熟悉postgresql 原理的人們,馬上就想到,可能要生成一個“新表”了。導致Postgres重寫表的每一行,這可能是一個非常昂貴的操作(就磁盤I/O和掛鐘時間而言),MYSQL 早期的版本也沒有好到哪里去,可是這對難兄難弟,都會成長。

PostgreSQL 在9.2 之后修改字段的大小,例如 varchar(20) ---> varchar(30) 返回修改僅僅是一瞬間的事情。

所以現在如果還有人說,PG修改字段的大小太差勁,那我到是覺得活在上世紀的 someone 可以清理一下內存了,終歸新的東西是要不斷學習的,你去看看現在的MYSQL 8 如果你的知識還保留在 MYSQL 5.5 ,那你一定也需要更新了。

那問題1 如果你還在使用PG 9.2 之前的版本,并繼續受到這個問題的纏繞,怎么辦

1 升級數據庫版本 (當然這個說法估計支持的聲音不少,但實際上做的人不多,因為牽扯的資源和人太多,沒有人愿意在沒有占有這個數據庫系統的開發或者第三方開發商的支持下去做這個事情)

2 建議將字段更換為text字段,(或者經常需要變動的文字的字段),

ALTER TABLE test ALTER COLUMN puzzle TYPE text;ALTER TABLE test ADD CONSTRAINT checksum_lengthCHECK (LENGTH(puzzle) <= 32);我們先看看這個方法合適嗎,這個方法當然合適,字段的擴充可以換個思路,我們可以給的無限,然后后面通過約束限制一下,這樣DBA 和開發其實都開心

當然也有人說,你加完約束,系統的性能會受到影響,來來來我們做一個測試,插入1百萬的數據,僅僅需要6秒多.

當然這并不是本期主要的話題,本期的主要話題是

這里要澄清的是,不是所有的PG 的 Alter Column type 操作都要進行重建表的操作(這里先不牽扯索引的事情)

這就是今天要進行測試的表,PG的版本 PG 12.2

測試如下

1 name 的類型從 char 變為 varchar 在變成 text

2 將上面的變化在變回來

將整形從小變大 從大變小,將日期類型進行變化

這些都是需要重寫的

說完這些可能還有些人有疑問

1 添加一個字段呢,添加一個帶默認值的字段呢

2 刪除一個字段呢

3 更改一個字段的名字呢

結果是這些都不需要重寫,另外在PG11 已經解決了關于 默認值的問題,這個問題,其實在有的商業數據庫到很新的版本還是一個問題。

最后是關于索引的問題,這里PG 建立索引盡量要使用

CREATE INDEX CONCURRENTLY idx_add_c on type_change (add_c);

根據PG 的原理來說,我們在建立索引如果不使用 concurrently 參數則建立索引時表要 獲取一個 access exclusive 的鎖,而如果我們使用了 concurrently 則我們會獲得一個 share update exclusive 的鎖。所以使用了concurrently 則會允許在索引建立的同時繼續讀取數據和寫入數據,當然也有一些副作用,今天就不說了,這個 concurrently 其實也可以找一期說一下,也是有點意思。

總結

以上是生活随笔為你收集整理的修改字段类型_PostgreSQL 关于字段类型的修改 谣言与止谣的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 丁五月 | 麻豆精品a∨在线观看 | 亚洲欧美一区二区三区四区 | 欧美日韩不卡合集视频 | 视频区小说区图片区 | 少妇激情一区二区三区视频 | 欧美极品少妇xxxxⅹ喷水 | jzzjzz日本丰满少妇 | 人人妻人人澡人人爽精品 | 毛片视频网址 | 一级片aaa | 亚洲v欧美v另类v综合v日韩v | 奇米影视在线 | 在线免费黄 | 大胸喷奶水www视频妖精网站 | 蜜桃视频导航 | 精品日韩在线播放 | 国产精品久久久久影院色老大 | 国产羞羞| 久青草资源福利视频 | 新红楼梦2005锦江版高清在线观看 | 五十路中文字幕 | 一本大道东京热无码 | 欧美男女视频 | 国产精品视频久久久久久久 | 欧美黄色免费视频 | 狠狠躁夜夜躁xxxxaaaa | 99精品视频免费在线观看 | 久久国产成人 | 国产麻豆一区二区三区 | 久久精品国产一区 | 国产丝袜第一页 | 免费av在线 | 一区二区三区少妇 | 香蕉精品视频在线观看 | 国产精品自拍合集 | 日本午夜在线视频 | 亚洲精品一区二区三 | 免费看黄色片的网站 | 97香蕉超级碰碰久久免费软件 | 亚洲午夜影视 | 欧美成人国产精品一区二区 | 久久精品国产亚洲AV无码男同 | 日本高清视频一区 | 国产在线观看免费高清 | 国产天天射 | 国产精品久久777777毛茸茸 | 日韩伊人久久 | 日韩一区二区三区视频 | 免费看日产一区二区三区 | 国产香蕉视频在线播放 | 性xxx法国hd极品 | 日本精品专区 | 宅男在线视频 | 国产专区一区 | 天天干,夜夜操 | 蜜桃av噜噜一区二区三区麻豆 | 国产国语videosex另类 | 99黄色片 | 国产美女无遮挡免费 | 国产成人亚洲欧洲在线 | 色5566| 葵司有码中文字幕二三区 | 国产精品久久午夜夜伦鲁鲁 | 午夜美女视频 | 精品欧美视频 | h在线观看视频 | 亚洲欧美日韩综合在线 | 久久影院午夜理论片无码 | 爱爱网视频| 国产亚洲精品久久久久久青梅 | 99热| 爱草视频| 国产视频一区二区三区四区五区 | 青青草超碰在线 | 特级毛片在线 | 中文字幕第一页亚洲 | 三级国产视频 | 国产亚洲欧美日韩高清 | 国产一区不卡视频 | 美女激情av| 欧美激情久久久久久久 | 一二三区免费 | 福利在线国产 | 国产高潮流白浆喷水视频 | 在线观看h网站 | 在线观看毛片视频 | www.99精品 | 欧美性bbw| 99久久婷婷国产精品综合 | 欧美性猛交一区二区三区精品 | 中文字幕第一页av | 国产日本在线播放 | 色呦呦| 在线观看午夜 | 级毛片内射视频 | 成人在线观看小视频 | 爱如潮水3免费观看日本高清 | 国产又爽又黄免费视频 |