PostgreSQL使用经历分享.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PostgreSQL使用经历分享 平安壹钱包 内容概要 ➢第一次接触 ➢案例分析 ➢闪光点 第一次接触 ➢这货我从来没用过 ➢到能开发使用,我要花多长时间 ➢和其他的数据库差异大吗? ➢Postgre是否能够支撑海量数据的存取 案例分析 PostgreSQL默认不区分大小写,它将所有的大写转换成小写。 从DAO层返回的结果集中,为什么取不到值。 解决方法: 1 .通过as定义别名; 2.通过DTO对象存储返回结果。 建议在开发全部用小写 案例分析 某一天在使用的过程中,网络断开后重连数 据库的时候,突然发现跳号了? 案例分析 PostgreSQL的分区表太麻烦了! ➢创建主表 create table t_pbp_transaction ( id bigint unique not null, bill_id varchar (32) not null, order_time timestamp not null, customer_id varchar (20) not null ); create unique index uidx_pbp_transaction_bill_id on t_pbp_transaction (bill_id)tablespace tbs_idx; primary key 与unique not null完全等价 我填过的坑 ➢创建多个子表,继承主表,也就是分区表 ➢增加约束,创建分区的索引 create table t_pbp_transaction_201511_tp ( check( order_time = timestamp 2015-11-01 00:00:00 and order_time timestamp 2015-12-01 00:00:00) )inherits(t_pbp_transaction); create unique index uidx_pbp_transaction_bill_id_201511 on t_pbp_transaction_201511_tp (bill_id) tablespace tbs_idx; 我填过的坑 ➢创建函数 create or replace function fun_pbp_transaction_patition returns trigger as $$ declare v_status int; begin v_status := 0; if ( new.order_time = timestamp 2015-11-01 00:00:00 and new.order_time timestamp 2015-12-01 00:00:00 ) then insert into t_pbp_transaction_201511_tp values (new.*); v_status := 1; else v_status := 2; end if; return v_status; end; $$ language plpgsql ; 案例分析 ➢创建触发器 ➢开启只扫描分表 create trigger tr_pbp_transaction_patition_insert before insert on t_pbp_transaction for each row execute procedure fun_pbp_transaction_patition(); set constraint_exclusion = partition; 案例分析 分区表能简单点不? 解决方案: 在DAO层,通过表的主要属性分表,在应用 程序中解决分表的问题。 存在的问题: ➢与其他数据库相比,需要维护的表更多; ➢多表的数据合并问题没能解决; 闪光点 不再担心字符串稍微

文档评论(0)

wendangchuan + 关注
实名认证
文档贡献者

高级工程师持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年09月22日上传了高级工程师

1亿VIP精品文档

相关文档