当前位置:首页 >时尚 >数据库开发程序员在开发过程中的注意事项 但其它数据库应该有一些共性

数据库开发程序员在开发过程中的注意事项 但其它数据库应该有一些共性

2024-06-29 06:36:41 [百科] 来源:避面尹邢网

数据库开发程序员在开发过程中的数据事项注意事项

作者:天极网 运维 数据库运维 数据库的开发实现了数据库的发展,而在数据库开发过程中起着最重要作用的库开开是数据库开发程序员,是发程他们创造了一个又一个的数据库奇迹。

一、过程前言:在经过一段时间的中的注意存储过程开发之后,写下了一些开发时候的数据事项小结和经验与大家共享,希望对大家有益,库开开主要是发程针对Sybase和SQL Server数据库,但其它数据库应该有一些共性。过程

二、中的注意适合读者对象:

数据库开发程序员在开发过程中的注意事项 但其它数据库应该有一些共性

  数据库开发程序员,数据事项数据库的库开开数据量很多,涉及到对SP(存储过程)的发程优化的项目开发人员,对数据库有浓厚兴趣的过程人。

数据库开发程序员在开发过程中的注意事项 但其它数据库应该有一些共性

三、中的注意介绍:

数据库开发程序员在开发过程中的注意事项 但其它数据库应该有一些共性

  在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。如果项目的SP较多,书写又没有一定的规范,将会影响以后的系统维护困难和大SP逻辑的难以理解,另外如果数据库的数据量大或者项目对SP的性能要求很,就会遇到优化的问题,否则速度有可能很慢,经过亲身经验,一个经过优化过的SP要比一个性能差的SP的效率甚至高几百倍。

四、内容:

  1、开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,***不要直接使用“databse.dbo.table_name”,因为sp_depends不能显示出该SP所使用的跨库table或view,不方便校验。

  2、开发人员在提交SP前,必须已经使用set showplan on分析过查询计划,做过自身的查询优化检查。

  3、高程序运行效率,优化应用程序,在SP编写过程中应该注意以下几点:

  a) SQL的使用规范:

  i. 尽量避免大事务操作,慎用holdlock子句,提高系统并发能力。

  ii. 尽量避免反复访问同一张或几张表,尤其是数据量较大的表,可以考虑先根据条件提取数据到临时表中,然后再做连接。

  iii. 尽量避免使用游标,因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该改写;如果使用了游标,就要尽量避免在游标循环中再进行表连接的操作。

  iv. 注意where字句写法,必须考虑语句顺序,应该根据索引顺序、范围大小来确定条件子句的前后顺序,尽可能的让字段顺序与索引顺序相一致,范围从大到小。

  v. 不要在where子句中的“=”左边进行函数、算术运算或其他表达式运算,否则系统将可能无法正确使用索引。

  vi. 尽量使用exists代替select count(1)来判断是否存在记录,count函数只有在统计表中所有行数时使用,而且count(1)比count(*)更有效率。

  vii. 尽量使用“>=”,不要使用“>”。

  viii. 注意一些or子句和union子句之间的替换

  ix. 注意表之间连接的数据类型,避免不同类型数据之间的连接。

  x. 注意存储过程中参数和数据类型的关系。

  xi. 注意insert、update操作的数据量,防止与其他应用冲突。如果数据量超过200个数据页面(400k),那么系统将会进行锁升级,页级锁会升级成表级锁。

  b) 索引的使用规范:

  i. 索引的创建要与应用结合考虑,建议大的OLTP表不要超过6个索引。

  ii. 尽可能的使用索引字段作为查询条件,尤其是聚簇索引,必要时可以通过index index_name来强制指定索引

  iii. 避免对大表查询时进行table scan,必要时考虑新建索引。

  iv. 在使用索引字段作为条件时,如果该索引是联合索引,那么必须使用到该索引中的***个字段作为条件时才能保证系统使用该索引,否则该索引将不会被使用。

  v. 要注意索引的维护,周期性重建索引,重新编译存储过程。

  c) tempdb的使用规范:

  i. 尽量避免使用distinct、order by、group by、having、join、cumpute,因为这些语句会加重tempdb的负担。

  ii. 避免频繁创建和删除临时表,减少系统表资源的消耗。

  iii. 在新建临时表时,如果一次性插入数据量很大,那么可以使用select into代替create table,避免log,提高速度;如果数据量不大,为了缓和系统表的资源,建议先create table,然后insert。

  iv. 如果临时表的数据量较大,需要建立索引,那么应该将创建临时表和建立索引的过程放在单独一个子存储过程中,这样才能保证系统能够很好的使用到该临时表的索引。

  v. 如果使用到了临时表,在存储过程的***务必将所有的临时表显式删除,先truncate table,然后drop table,这样可以避免系统表的较长时间锁定。

  vi. 慎用大的临时表与其他大表的连接查询和修改,减低系统表负担,因为这种操作会在一条语句中多次使用tempdb的系统表。

  d) 合理的算法使用:

  根据上面已提到的SQL优化技术和ASE Tuning手册中的SQL优化内容,结合实际应用,采用多种算法进行比较,以获得消耗资源最少、效率***的方法。具体可用ASE调优命令:set statistics io on, set statistics time on , set showplan on 等。这些对于一个开发程序员来说是非常有价值的知识,希望大家都能从中收获。
 

【编辑推荐】

  1. SQL数据库超级管理员账号防护知识
  2. 对数据库恢复的理解
  3. 如何管理好多个数据库
责任编辑:迎迎 来源: 天极网 数据库开发程序员

(责任编辑:休闲)

    推荐文章
    • *ST科陆成立新能源公司 经营范围含在线能源监测技术研发等

      *ST科陆成立新能源公司  经营范围含在线能源监测技术研发等3月5日,汕尾市金拓新能源有限公司成立,法定代表人为樊鹏,注册资本500万元人民币,经营范围包含:热力生产和供应;发电、输电、供电业务;各类工程建设活动;资源再生利用技术研发;在线能源监测技术研发等。 ...[详细]
    • 更便宜 realme新款真无线耳机亮相

      更便宜 realme新款真无线耳机亮相5月18日消息,据外媒报道,realme方面的一款新的真无线耳机曝光,这款耳机被命名为realme Buds Air Neo,从名字上就可以看出,它的定位和价格会更低一些。外观方面没什么好说的,和re ...[详细]
    • CPU该买盒装还是该买散片 答案你一定想不到

      CPU该买盒装还是该买散片 答案你一定想不到CPU该买盒装还是该买散片 答案你一定想不到作者:人宝宝 2023-06-02 07:02:33商务办公 刚才也说了单看价格来说,散片相当于盒装价格打了个9折,折扣力度不大不小,让你很犹豫。那散片和盒 ...[详细]
    • 新加坡团队开发AI新工具 文本直接生产3DVR图像

      新加坡团队开发AI新工具 文本直接生产3DVR图像如今各种AI图像生成软件正火,不过基本都是生成2D类图像,日前来自新加坡的一个科研团队宣布,正在开发文本直接生产3DVR图像的AI系统,如果项目完成,将对今后的绘图、电影、动漫乃至游戏等领域造成巨大的 ...[详细]
    • 微粒贷分两次借款怎么还 具体情况是怎样的?

      微粒贷分两次借款怎么还 具体情况是怎样的?微粒贷是微众银行推出的信用贷款,借款人可以直接在微信钱包上申请。有不少人在微粒贷不止借了一次,不知道是分开还款还是要在同一天内还款。那么,微粒贷分两次借款怎么还?这里就来介绍下微粒贷还款相关内容。微粒 ...[详细]
    • iPhone7猛料来袭:苹果7或将支持全新的WiGig无线技术

      iPhone7猛料来袭:苹果7或将支持全新的WiGig无线技术6月7日消息,关于苹果iPhone7的传闻不少,但大多也是集中在外观变化和配置升级方面,很难让人有“苹果再一次改变世界”的惊叹,而我们很是期待苹果能够加入些黑科技什么的。很应景地,国外有分析师就带来了 ...[详细]
    • 不要用100vh做移动响应,有问题?

      不要用100vh做移动响应,有问题?不要用100vh做移动响应,有问题?作者:前端小智 2022-05-31 12:26:50移动开发 一般来说,我们使用 height:100vh 进行全屏布局,这是一种很方便的响应式方法。但当在实际设 ...[详细]
    • 玩家自制N64版《超级马力欧大电影》预告片

      玩家自制N64版《超级马力欧大电影》预告片动画师 codaanim 在推特上分享了一段视频,以任天堂 64 版本《超级马里奥64》风格制作的《超级马力欧大电影》预告片。动画预告:这段动画非常简短,不过它再现了动画电影预告的开头片段。预告开头鲍 ...[详细]
    • 全面注册制的影响有哪些 对A股估值的影响你知道吗?

      全面注册制的影响有哪些 对A股估值的影响你知道吗?发行注册制,常态化退市注册制在科创板试行一年有余,有近200家公司成功IPO,这些公司在技术研发方面普遍具有优势,IPO将促使这200家公司进入发展的快车道。对A股估值的影响注册制推行对a股估值影响要 ...[详细]
    • 一加8 Pro相机可“透视”?官方回应

      一加8 Pro相机可“透视”?官方回应近日,有外媒发现一加8 Pro相机能够实现“透视”功能,当一加8 Pro开启滤镜中的秋意选项,500万像素滤光镜头即可“看穿”塑料制品和织物打造的物品。经过实际测试,确实能够达到“看穿”塑料的功能,但 ...[详细]
    热点阅读