用户名: 密码: 免费注册 忘记密码? 加入收藏 | 设为首页
牢记!SQL Server数据库开发的二十一条军规
学院首页 | 资讯中心 | 服务器软件 | 系统工具 | 系统软件 | 办公软件 | 聊天软件 | 多 媒 体 | 网页制作 | 网站运营 | 平面设计
艺术欣赏 | 数据库软件 | 程序开发 | 网络组建 | 源码下载 | 驱动下载 | 软件下载 | 电脑安全 | IT创业 | IT博客 | IT社区
硬件数码导航 | 硬件频道 | 本本频道 | MP3频道 | 相机频道 | 手机频道 | 显卡频道 | LCD 频道 | 音箱音频 | 行情 | 评测 | 导购
学院专题 软件 - 系统 - 办公 - 聊天 - 多媒体 - 网页制作 - IT创业 - 运营 - 平面 - 设计欣赏 - 数据库 - 程序 - 服务器 - 组网

 当前位置: 首页>>技术频道>>数据库>>Mssql教程>>正文

牢记!SQL Server数据库开发的二十一条军规

日期:2006-9-15 3:40:20     来源:   编辑:   

如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS) 。

在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计 。 这些经验来自我过去几年中经受的教训,一直来,我看到许多同样的设计错误被一次又一次的重复 。

一、了解你用的工具

不要轻视这一点,这是我在这篇文章中讲述的最关键的一条 。 也许你也看到有很多的SQL Server程序员没有掌握全部的T-SQL命令和SQL Server提供的那些有用的工具 。

“什么?我要浪费一个月的时间来学习那些我永远也不会用到的SQL命令???”,你也许会这样说 。 对的,你不需要这样做 。 但是你应该用一个周末浏览所有的T-SQL命令 。 在这里,你的任务是了解,将来,当你设计一个查询时,你会记起来:“对了,这里有一个命令可以完全实现我需要的功能”,于是,到MSDN查看这个命令的确切语法 。

二、不要使用游标

让我再重复一遍:不要使用游标 。 如果你想破坏整个系统的性能的话,它们倒是你最有效的首选办法 。 大多数的初学者都使用游标,而没有意识到它们对性能造成的影响 。 它们占用内存,还用它们那些不可思议的方式锁定表,另外,它们简直就像蜗牛 。 而最糟糕的是,它们可以使你的DBA所能做的一切性能优化等于没做 。 不知你是否知道每执行一次FETCH就等于执行一次SELECT命令?这意味着如果你的游标有10000条记录,它将执行10000次SELECT!如果你使用一组SELECT、UPDATE或者DELETE来完成相应的工作,那将有效率的多 。

初学者一般认为使用游标是一种比较熟悉和舒适的编程方式,可很不幸,这会导致糟糕的性能 。 显然,SQL的总体目的是你要实现什么,而不是怎样实现 。

我曾经用T-SQL重写了一个基于游标的存储过程,那个表只有100,000条记录,原来的存储过程用了40分钟才执行完毕,而新的存储过程只用了10秒钟 。 在这里,我想你应该可以看到一个不称职的程序员究竟在干了什么!!!

我们可以写一个小程序来取得和处理数据并且更新数据库,这样做有时会更有效 。 记住:对于循环,T-SQL无能为力 。

我再重新提醒一下:使用游标没有好处 。 除了DBA的工作外,我从来没有看到过使用游标可以有效的完成任何工作 。

三、规范化你的数据表

为什么不规范化数据库?大概有两个借口:出于性能的考虑和纯粹因为懒惰 。 至于第二点,你迟早得为此付出代价 。 而关于性能的问题,你不需要优化根本就不慢的东西 。 我经常看到一些程序员“反规范化”数据库,他们的理由是“原来的设计太慢了”,可结果却常常是他们让系统更慢了 。 DBMS被设计用来处理规范数据库的,因此,记住:按照规范化的要求设计数据库 。 gigi_miao

本新闻共3页,当前在第1页  [1]  [2]  [3]  

  ▼ 下一篇新闻 点击查看
  ▲ 上一篇新闻 没有了        网友发表观点请进入=>



我要纠错】【进入论坛交流】【关闭此页

文章搜索
   
最新文章

 
·千名爱好者参与首届PHP调查
·腾讯称QQ通讯信息密钥加密 不会被
·雅虎反超Google排名搜索第二
·中搜等十余家IT企业因流氓软件被
·盛大前员工克隆网游装备获暴利被
·凤凰网将向迅雷提供娱乐及宽带内
·信产部出手规范 新浪式企业法律架
·雅虎中国称旗下软件早已没有流氓
·中搜停止划词搜索与流氓软件决裂

广告赞助
相关文章 相关教程下载
焦点信息
·腾讯称QQ通讯信息密钥加密 不会被监听
·信产部出手规范 新浪式企业法律架构不得不改
·盛大前员工克隆网游装备获暴利被追刑责
·凤凰网将向迅雷提供娱乐及宽带内容
·雅虎中国称旗下软件早已没有流氓问题
·雅虎反超Google排名搜索第二
网友评论:(评论内容只代表网友观点,与本站立场无关!)
发表评论     Hard168社区推荐帖子
姓 名: *
* 请网友遵纪守法并注意语言文明。
IT人物推荐

王江民
马云
柳传志



关于本站    联络方式    广告服务    意见信箱    加入收藏   设为首页    -
本站部分内容来自网上,如有侵权部分,敬请告知,我们会在24小时内给予处理
版权所有:Hard168.Com,如需转载文章请与我们取得联系
京ICP备05063857号 Designed by Hard168.Com
牢记!SQL Server数据库开发的二十一条军规