婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > postgresql 修改字段長度的操作

postgresql 修改字段長度的操作

熱門標簽:美容工作室地圖標注 打電話智能電銷機器人授權 海豐有多少商家沒有地圖標注 辦公外呼電話系統 漯河外呼電話系統 合肥公司外呼系統運營商 重慶自動外呼系統定制 地圖標注和圖片名稱的區別 外呼調研系統

使用數據庫postgresql的時候,有時會遇到字段長度擴展的情況,由于之前已經有數據了,所以只能修改字段長度,不能通過刪除再增加的方式。

可以使用如下方式進行

ALTER TABLE your_table_name alter COLUMN your_column_name type character varying(3000);

通過上面的一句話就可以把你的表中相應的字段的長度修改為3000.

補充:PostgreSQL字符類型長度變更的性能

背景

業務有時會遇到表中的字符型字段的長度不夠用的問題,需要修改表定義。但是表里的數據已經很多了,修改字段長度會不會造成應用堵塞呢?

測試驗證

做了個小測試,如下

建表并插入1000w數據

postgres=# create table tbx1(id int,c1 char(10),c2 varchar(10));
CREATE TABLE
postgres=# insert into tbx1 select id ,'aaaaa','aaaaa' from generate_series(1,10000000) id;
INSERT 0 10000000 

變更varchar類型長度

postgres=# alter table tbx1 alter COLUMN c2 type varchar(100);
ALTER TABLE
Time: 1.873 ms
postgres=# alter table tbx1 alter COLUMN c2 type varchar(99);
ALTER TABLE
Time: 12815.678 ms
postgres=# alter table tbx1 alter COLUMN c2 type varchar(4);
ERROR: value too long for type character varying(4)
Time: 5.328 ms 

變更char類型長度

postgres=# alter table tbx1 alter COLUMN c1 type char(100);
ALTER TABLE
Time: 35429.282 ms
postgres=# alter table tbx1 alter COLUMN c1 type char(6);
ALTER TABLE
Time: 20004.198 ms
postgres=# alter table tbx1 alter COLUMN c1 type char(4);
ERROR: value too long for type character(4)
Time: 4.671 ms 

變更char類型,varchar和text類型互轉

alter table tbx1 alter COLUMN c1 type varchar(6);
ALTER TABLE
Time: 18880.369 ms
postgres=# alter table tbx1 alter COLUMN c1 type text;
ALTER TABLE
Time: 12.691 ms
postgres=# alter table tbx1 alter COLUMN c1 type varchar(20);
ALTER TABLE
Time: 32846.016 ms
postgres=# alter table tbx1 alter COLUMN c1 type char(20);
ALTER TABLE
Time: 39796.784 ms
postgres=# alter table tbx1 alter COLUMN c1 type text;
ALTER TABLE
Time: 32091.025 ms
postgres=# alter table tbx1 alter COLUMN c1 type char(20);
ALTER TABLE
Time: 26031.344 ms 

定義變更后的數據

定義變更后,數據位置未變,即沒有產生新的tuple

postgres=# select ctid,id from tbx1 limit 5;
 ctid | id 
-------+----
 (0,1) | 1
 (0,2) | 2
 (0,3) | 3
 (0,4) | 4
 (0,5) | 5
(5 rows) 

除varchar擴容以外的定義變更,每個tuple產生一條WAL記錄

$ pg_xlogdump -f -s 3/BE002088 -n 5
rmgr: Heap    len (rec/tot):   3/  181, tx:    1733, lsn: 3/BE002088, prev 3/BE001FB8, desc: INSERT off 38, blkref #0: rel 1663/13269/16823 blk 58358
rmgr: Heap    len (rec/tot):   3/  181, tx:    1733, lsn: 3/BE002140, prev 3/BE002088, desc: INSERT off 39, blkref #0: rel 1663/13269/16823 blk 58358
rmgr: Heap    len (rec/tot):   3/  181, tx:    1733, lsn: 3/BE0021F8, prev 3/BE002140, desc: INSERT off 40, blkref #0: rel 1663/13269/16823 blk 58358
rmgr: Heap    len (rec/tot):   3/  181, tx:    1733, lsn: 3/BE0022B0, prev 3/BE0021F8, desc: INSERT off 41, blkref #0: rel 1663/13269/16823 blk 58358
rmgr: Heap    len (rec/tot):   3/  181, tx:    1733, lsn: 3/BE002368, prev 3/BE0022B0, desc: INSERT off 42, blkref #0: rel 1663/13269/16823 blk 58358 

結論

varchar擴容,varchar轉text只需修改元數據,毫秒完成。

其它轉換需要的時間和數據量有關,1000w數據10~40秒,但是不改變數據文件,只是做檢查。

縮容時如果定義長度不夠容納現有數據報錯

不建議使用char類型,除了埋坑幾乎沒什么用,這一條不僅適用與PG,所有關系數據庫應該都適用。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • postgresql varchar字段regexp_replace正則替換操作
  • 解決postgresql表中的字段名稱包含特殊符號的問題
  • PostgreSQL 實現查詢表字段信息SQL腳本
  • PostgreSQL 更新JSON,JSONB字段的操作
  • postgresql 實現獲取所有表名,字段名,字段類型,注釋
  • postgresql 補齊空值、自定義查詢字段并賦值操作

標簽:衡陽 來賓 烏海 株洲 蚌埠 晉城 錦州 珠海

巨人網絡通訊聲明:本文標題《postgresql 修改字段長度的操作》,本文關鍵詞  postgresql,修改,字段,長度,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《postgresql 修改字段長度的操作》相關的同類信息!
  • 本頁收集關于postgresql 修改字段長度的操作的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    av电影在线观看不卡| 亚洲色图都市小说| 爽好多水快深点欧美视频| 亚洲美女在线国产| 天堂一区二区在线免费观看| 欧美精品一区二区三区蜜桃视频 | 日韩欧美黄色影院| 91在线视频网址| 国产福利一区二区| 国产麻豆成人精品| 久久er99精品| 麻豆精品新av中文字幕| 日韩在线卡一卡二| 日本不卡视频在线| 日韩欧美色电影| 国产视频一区二区三区在线观看| 精品播放一区二区| 亚洲精品视频一区| 日韩电影一区二区三区四区| 久久99九九99精品| 亚洲综合精品久久| 国产精品 日产精品 欧美精品| 91亚洲精品久久久蜜桃| 成人福利视频网站| 久久综合国产精品| 亚洲成人精品一区二区| 久久久久久免费网| 在线欧美一区二区| 国产激情视频一区二区在线观看| 精品无人码麻豆乱码1区2区| 亚洲一区av在线| 欧美电影免费观看完整版| 国产性色一区二区| 亚洲综合色自拍一区| 国产一区二区福利视频| 久久精品国产亚洲高清剧情介绍| 极品少妇一区二区三区精品视频 | 欧美一区二区三区男人的天堂| 99riav一区二区三区| www国产成人| 日韩av电影天堂| 91老师片黄在线观看| 国产欧美日韩麻豆91| 日本成人在线视频网站| 91免费版pro下载短视频| 日韩一区二区中文字幕| 亚洲欧洲日韩女同| 偷拍日韩校园综合在线| 欧美做爰猛烈大尺度电影无法无天| 一区在线中文字幕| 成人福利视频网站| 国产精品国产自产拍高清av王其 | 欧美激情一区二区三区四区 | 亚洲福利一区二区| 国产精品亚洲综合一区在线观看| 亚洲成av人影院| 夜色激情一区二区| 99久久婷婷国产| 樱花影视一区二区| 91精品国产免费| 精品日韩一区二区三区免费视频| 日本不卡不码高清免费观看| 91免费观看视频在线| 91久久香蕉国产日韩欧美9色| 色菇凉天天综合网| 亚洲一区二区三区视频在线| 欧美日韩视频在线一区二区| 精久久久久久久久久久| 国产精品入口麻豆九色| 色老汉一区二区三区| 午夜成人免费电影| 久久久欧美精品sm网站| 欧美精品在线一区二区| 中文字幕在线不卡视频| 亚洲免费电影在线| 欧美一区二区三区免费大片 | 一区二区三区在线视频免费| 蜜臂av日日欢夜夜爽一区| 国产日韩欧美制服另类| 欧日韩精品视频| 国产成人在线视频播放| 亚洲一二三级电影| 久久久国产精品不卡| 精品久久久网站| 国产高清精品久久久久| 夜色激情一区二区| 久久精子c满五个校花| 在线免费观看日韩欧美| 九色综合狠狠综合久久| 亚洲综合久久久| 中文字幕乱码久久午夜不卡| 国产麻豆精品在线观看| 欧美视频中文字幕| 免费观看成人av| 欧美国产精品中文字幕| 欧美精品777| 99国产精品视频免费观看| 国产麻豆成人精品| 日韩高清欧美激情| 一区二区三区在线视频播放| 国产午夜精品一区二区三区嫩草| 555www色欧美视频| 狠狠网亚洲精品| 最新日韩av在线| 日韩精品一区二区三区在线播放| 色老头久久综合| 不卡的av在线播放| 国产精品亚洲а∨天堂免在线| 美女性感视频久久| 日韩电影在线免费看| 亚洲综合在线五月| 久久中文字幕电影| 日本人妖一区二区| 亚洲一区在线视频观看| 亚洲精品国产精华液| 中文字幕永久在线不卡| 中文av一区二区| 中文字幕成人在线观看| 国产精品久久免费看| 欧美亚洲综合另类| 成人黄色777网| 高清视频一区二区| 久久99国内精品| 久久国内精品视频| 国产一区二区影院| 波多野结衣中文字幕一区二区三区| 国产91精品在线观看| av在线播放不卡| 欧美写真视频网站| 97精品国产露脸对白| 亚洲国产精品成人综合| 99久久精品免费观看| 日本韩国精品在线| 91久久精品国产91性色tv| 色婷婷综合中文久久一本| 成人精品免费视频| 国产高清在线精品| 国产精品亚洲视频| 99国内精品久久| 国产综合久久久久影院| 91麻豆精品国产综合久久久久久| 欧美草草影院在线视频| 5566中文字幕一区二区电影| 成人av动漫网站| 一本大道久久a久久精品综合| 国产一区二区三区视频在线播放| 紧缚捆绑精品一区二区| 一区二区高清在线| 久久久国产综合精品女国产盗摄| 高清久久久久久| 日韩网站在线看片你懂的| 亚洲九九爱视频| 日本丶国产丶欧美色综合| 亚洲婷婷综合久久一本伊一区 | 欧美一区二区三级| 亚洲第四色夜色| 欧美一级二级三级蜜桃| 午夜国产精品一区| 欧美一区二区三区成人| 国产一区在线观看麻豆| 国产精品乱码一区二区三区软件| 波多野结衣在线一区| 一区二区三区在线视频观看58| 欧美日韩另类一区| 国产麻豆精品95视频| 亚洲蜜臀av乱码久久精品| 在线成人av影院| 久久97超碰色| 国产精品久久久久久久久动漫 | 菠萝蜜视频在线观看一区| 亚洲影视在线观看| 精品国免费一区二区三区| 成人精品国产福利| 午夜精品视频在线观看| 精品欧美黑人一区二区三区| 99精品在线观看视频| 日韩成人一区二区| 国产精品久久久久久久久久久免费看 | 亚洲国产高清不卡| 欧洲人成人精品| 国产成人福利片| 免费看日韩a级影片| 一区二区三区**美女毛片| 久久综合资源网| 欧美日韩国产一二三| caoporm超碰国产精品| 久久精品国产亚洲5555| 亚洲精品视频在线看| 精品成人免费观看| 欧美另类久久久品| 欧洲精品在线观看| 97精品超碰一区二区三区| 国产精品12区| 精品影视av免费| 日本三级韩国三级欧美三级| 亚洲欧美一区二区三区久本道91 | 成人在线视频首页| 久久99热狠狠色一区二区| 午夜精品aaa| 亚洲一卡二卡三卡四卡五卡|