如何提高触发器的性能?(很急)

fadestarfish 2003-03-30 09:04:54
当我为一张总表写了10个触发器,生成相等行数的10个子表。
通过程序将一批文本导入总表,但即使一个文本也要10几分钟,速度极慢,如果删除触发器,则1000个文本也不要那么多时候,速度极快。
是否触发器耗时很多?还是触发器写得不好,有什么方法可以优化么?
字段大都选择numeric(18,3)

另子表中有些列为计算列,无法改变精度,但我不需要这么高的精度。是不是非要把计算列的值也放到触发器里才能控制精度。速度是提高了还是降低了?

float和real是否适合于保存五六位整数位,三到四位小数位的值。是精确值还是近似值?

删除所有表中的数据后,怎么把@@identity的值重新置1?
...全文
66 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
fadestarfish 2003-03-30
做成过程一定可以快一点么?
回复
pengdali 2003-03-30
1、你为什么要这么做呢?做成过程不行吗?看看在设计上能否优化。
2、计算的公式用cast(X*Y as numeric(18,3))试试
3、DBCC CHECKIDENT (表, RESEED, 1)

希望能帮你
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2003-03-30 09:04
社区公告
暂无公告