`
sbabzc
  • 浏览: 36162 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

SQL Server该做的和不该做的

阅读更多
简介

在使用数据库的时候,请不要小看这些小技巧。

我们在学习SQL命令后,需要知道,哪些事情不能做,哪些事情可以做,

当然我们也可以参考MSDN来学习确切的一些语法和用法

1:不要使用游标
除了你不是DBA,请不好使用游标,我们很多初学者,在使用游标的时候,并没有注意到游标的性能。
例如,如果你的游标有10000条记录,那它将会执行10000次select。

2:不要使用select *
当然了,不使用 select * 却是很困难,主要是习惯问题,我们都很习惯这样的用法
不过呢,如果可以尝试指定列的话
那么我么将:
1:减少了内存以及网络消耗
2:优化了缓存的安全

3:如果是一个人员信息表,不要仅创建“性别”这个字段作为索引
首先我们了解到,索引可以加快表的查询,不过如果是性别这个字段作为索引
他只能分两个区,那么如果有1000000条数据,那么其实也没有进行太多的优化,
我们最好能把一些常用的字段组合一起进行索引,例如:姓名+省份+城市+性别

4:不要使用transactions命令

5:不要打开大的记录
我们再论坛经常会有人提出,怎么才能快速打开100000条记录,那么这样做是不对的
打开大数据量会影响界面显示,最好每次打开200条左右的数据

7:不要使用临时表
如果没有必要,不要使用临时表,我们可以通过子查询来代替它。使用
临时表不仅会增加开销,而且会伤脑筋去想如何来写脚本。

8:不要使用TEXT数据类型
除非你要使用非常大的数量,那么不要使用Text数据类型,他不仅仅查询缓慢,而且浪费了大量的空间,可以使用CARCHAR
来处理

9:不要使用select max(id) 从主表插入到子表里
这个是一个常见的错误,当两个人同时插入数据的时候就会失败。
可以使用 SCOPE_IDENTITY,IDENT_CURRENT和@ @ IDENTITY之一

10:不要通过insert来插入大量的数据
除非绝对必要,那么可以使用工具里插入数据,那么是最好的解决方法

本文地址:http://www.xszlo.com/article/2012-12-02/7558.html,转发请保留这个地址,谢谢
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics