SqlServer积累

摘要: sql server2005如果语句不符合SARG(扫描参数)会引起大量性能损失,特别是在数据量较大的时候。
如果一个表达式不能满足SARG的形式,那它就无法限制搜索的范围了,也就是SQL SERVER必须对每一行都判断它是否满足where子句中的所有条件。所以一个索引对于不满足SARG形式的表达式来说是无用的。所以执行的那么慢了。阅读全文
posted @ 2007-11-01 17:46 jecray 阅读(383) | 评论 (3) 编辑
摘要: 只要涉及到一张表中的同个字段之间或不同字段之间具有逻辑关系 就有可能用到自连接查询 阅读全文
posted @ 2007-09-20 00:14 jecray 阅读(708) | 评论 (2) 编辑
摘要: 总结几种分页方法 大部分都要拼凑sql语句 效率从高到低如下
top+大于id > 临时表 > top+not in id > top+top > 游标阅读全文
posted @ 2007-05-23 13:11 jecray 阅读(108) | 评论 (0) 编辑
摘要: 写个有点复杂的Jobs---连接远程机器数据库 在同个域中或相同的网段中阅读全文
posted @ 2007-04-15 14:06 jecray 阅读(229) | 评论 (0) 编辑
摘要: 借助网上资料的帮助,终于解决了这个问题,不容易啊。总结一下。(所有操作都在xp服务器上执行)
运行环境:一台运行在Xp下的sqlserver 2000服务器,一台运行在2000 server上的sqlserver 2000服务器,两台服务器在同一个域中。
目的:在xp的数据库服务器上执行带有分布式事务的Job阅读全文
posted @ 2007-04-15 14:05 jecray 阅读(151) | 评论 (0) 编辑
摘要: 这两天都在弄sqlserver的T-sql,毕竟还是脚本,连内置的数组都没有。由于项目需求要进行同个域中的两台sqlserver服务器之间的数据操作,要使用分布式事务来防止意外。可是不能成功执行,不过在csdn上发现一篇可能有帮助的文章。阅读全文
posted @ 2007-04-15 14:05 jecray 阅读(67) | 评论 (0) 编辑
摘要: 下午被数据库搞的莫名奇妙,总是出现如下错误:Syntax error converting the nvarchar value to a column of data type int 最后发现原因是在存储过程中return的值只能是简单类型int型,浪费了不少时间,现在把自己的遇到的知识总结下:
1.在存储过程中执行带output型的存储过程 在sqlserver自带的sp dbo.dt_displayoaerror中有示例
2.在数据库中,未赋值是null, 他和 '' 是不同的,不像一些语言会给字符型变量赋值为空. 因此对于为null的变量要通过 @temp=null来判断,或者用isnull函数.
3.关于存储过程的Return value和Output value.return值只能是数字型,但如果一个nvarchar类型的变量,且该变量中是数字可以隐式地转换为数字时,那么他将可以作为return值.同理,其他类型变量也一样.阅读全文
posted @ 2007-04-15 14:04 jecray 阅读(81) | 评论 (0) 编辑