位置: 编程技术 - 正文

DB2编程序技巧 (六)(db2入门教程)

编辑:rootadmin
正在看的db2教程是:DB2编程序技巧 (六)。2.2 SQL语句尽量写复杂SQL 尽量使用大的复杂的SQL语句,将多而简单的语句组合成大的SQL语句对性能会有所改善。 DB2的SQL Engieer对复杂语句的优化能力比较强,基本上不用当心语句的性能问题。 Oracle 则相反,推荐将复杂的语句简单化,SQL Engieer的优化能力不是特别好。 这是因为每一个SQL语句都会有reset SQLCODE和SQLSTATE等各种操作,会对数据库性能有所消耗。 一个总的思想就是尽量减少SQL语句的个数。 2.3 SQL SP及C SP的选择 首先,C的sp的性能比sql 的sp 的要高。 一般而言,SQL语句比较复杂,而逻辑比较简单,sql sp 与 c sp 的性能差异会比较小,这样从工作量考虑,用SQL写比较好。 而如果逻辑比较复杂,SQL比较简单,用c写比较好。 2.4 查询的优化(HASH及RR_TO_RS) db2set DB2_HASH_JOIN=Y (HASH排序优化) 指定排序时使用HASH排序,这样db2在表join时,先对各表做hash排序,再join,这样可以大大提高性能。 剧沈刚说做实验,7个一千万条记录表的做join取条记录,再没有索引的情况下 秒。 db2set DB2_RR_TO_RS=Y 该设置后,不能定义RR隔离级别,如果定义RR,db2也会自动降为RS. 这样,db2不用管理Next key,可以少管理一些东西,这样可以提高性能。 2.5 避免使用count(*) 及exists的方法 1、首先要避免使用count(*)操作,因为count(*)基本上要对表做全部扫描一遍,如果使用很多会导致很慢。 2、exists比count(*)要快,但总的来说也会对表做扫描,它只是碰到第一条符合的记录就停下来。 如果做这两中操作的目的是为 select into 服务的话,就可以省略掉这两步。 直接使用select into 选择记录中的字段。 如果是没有记录选择到的话,db2 会将 sqlcode= 和 sqlstate='' 如果是有多条记录的话,db2会产生一个错误。 程序可以创建 continue handler for exception continue handler for not found 来检测。 这是最快速的方法。 3、如果是判断是不是一条,可以使用游标来计算,用一个计数器,累加,达到预定值后就离开。这个速度也比count(*) 要快,因为它只要扫描到预定值就不再扫描了,不用做全表的scan,不过它写起来比较麻烦。 3 DB2表及sp管理 3.1 看存储过程文本 select text from syscat.procedures where procname='PROC1'; 3.2 看表结构 describe table syscat.procedures describe select * from syscat.procedures 3.3 查看各表对sp的影响(被哪些sp使用) select PROCNAME from SYSCAT.PROCEDURES where SPECIFICNAME in(select dname from sysibm.sysdependencies where bname in ( select PKGNAME from syscat.packagedep where bname='TB_BRANCH'))

推荐整理分享DB2编程序技巧 (六)(db2入门教程),希望有所帮助,仅作参考,欢迎阅读内容。

DB2编程序技巧 (六)(db2入门教程)

文章相关热门搜索词:db2教程,db2教程,db2使用教程,db2入门教程,db2入门教程,db2使用教程,db2入门教程,db2使用教程,内容如对您有帮助,希望把文章链接给更多的朋友!

DB2编程序技巧 (五) 正在看的db2教程是:DB2编程序技巧(五)。1.存储过程fence及unfencefence的存储过程单独启用一个新的地址空间,而unfence的存储过程和调用它的进程使用同一

DB2编程序技巧 (四) 正在看的db2教程是:DB2编程序技巧(四)。1.预防字段空值的处理SELECTDEPTNO,DEPTNAME,COALESCE(MGRNO,'ABSENT'),ADMRDEPTFROMDEPARTMENTCOALESCE函数返回()中表达式列表中第一

DB2编程序技巧 (三) 正在看的db2教程是:DB2编程序技巧(三)。另一种为pcursor1:forloopcs1ascousor1cursorasselectmarket_codeasmarket_codefromtb_market_codeforupdatedoendfor;这种方式的优点是比较简

标签: db2入门教程

本文链接地址:https://www.jiuchutong.com/biancheng/312261.html 转载请保留说明!

上一篇:DB2编程序技巧 (七)(db2入门视频教程)

下一篇:DB2编程序技巧 (五)(db2 -x)

  • 增值税年末结转的会计处理
  • 公司不开票要交工会经费吗
  • 计提城市维护建设费和教育费附加的会计分录
  • 进项税为什么记在借方通俗讲法
  • 13点专票和13点普票的区别
  • 销售补差怎么做分析
  • 企业清算需要什么
  • 二手商品没有发票
  • 企业的房屋是否能确认为存货?为什么?(简单描述即可)
  • 当期允许抵扣的农产品进项税额
  • 以前借款没做账现在收回来怎么做账务处理?
  • 调整以前年度多计提的工资
  • 标书费收据丢失怎么办
  • 企业发生的现金折扣应计入
  • 预缴税款是开票金额的多少
  • 营改增后部分经济行为定性上的变化和影响有什么?
  • 当月进项已认证,发现票有问题怎么处理
  • 股东放弃债权账务处理
  • 公司会议案例
  • 购买工程资质文件怎么写
  • 去年管理费用多记账结账如何调账
  • 运输公司造成的损耗
  • 企业分红需要缴纳什么税
  • swupdtmr.exe - swupdtmr进程是什么意思 什么作用
  • 往公户存钱怎么存最划算
  • 华为mate50pro怎么读
  • 购入一台设备的会计分录
  • web投票系统源码
  • 酒店没有营业执照开业员工有责任吗
  • PHP:stream_get_transports()的用法_Stream函数
  • nerosvc.exe - nerosvc是什么进程 有什么用
  • dghm.exe是什么程序
  • php pulsar
  • 收回贷款本息是包含本金吗
  • 食堂现金管理办法
  • php文件夹在哪
  • 微信小程序开发公司
  • nodejs搭建http服务器接收请求
  • Laravel+jQuery实现AJAX分页效果
  • rf-kill
  • 认缴制和实缴制的区别
  • 长期股权投资初始计量会计科目
  • day02-HTML02
  • 预缴税款为什么不能跨月申报
  • 商业折扣影响销售成本吗
  • 运输费用增值税怎么算
  • 房地产开发企业成本核算方法
  • 个体户查账征收个人所得税税率
  • 或有资产的确认条件基本确定
  • 金融资产经营资产
  • 政府会计计提折旧方法
  • 分期收款发出商品一批,售价50000
  • 资本公积转增股本所有者权益会变吗
  • 生产经营收入总额填什么金额
  • 暂估应付账款余额调整
  • 现金和银行存款的区别
  • Win10 Mobile 10549预览版怎么升级?
  • wind2000
  • ubuntu配置yum
  • nfs安装配置
  • win7开始菜单中的程序图标修改了
  • win10安装win7主题
  • 如何找?
  • win7屏幕不停闪烁
  • windows config文件
  • win8.1无法安装vmware tools
  • element拖拽
  • ios shell脚本
  • unity3d android
  • javascript函数怎么写
  • 使用Python对SQLite数据库操作
  • win10 python环境
  • python获取数据的方法
  • 深入理解javascript特性
  • jquery添加自定义属性
  • centos python2.7升级到3.7
  • 税务局与地税局一样吗?
  • 火车票抵扣申报表怎么填
  • 水利优惠政策
  • 税务稽查项目书的填写
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设