如何加快触发速度

时间:2017-04-22 09:36:11

标签: c# sql-server tsql

我在表中有800条记录,我使用触发器从4个表中更新超过20个字段但是非常慢需要25秒来更新更改,我知道计算字段更快但我不能使用计算字段来获取/更新另一个表中的字段数据。我可以使用其他什么方法?

下面我试图表明我是如何尝试更新字段

create  TRIGGER [dbo].[WO-WHLINFO] 
    ON [dbo].[WORKORDERS]
    AFTER  INSERT,UPDATE
    AS 
    BEGIN    IF TRIGGER_NESTLEVEL() > 1
     RETURN      UPDATE T1 
         SET  [C/S ANGLE2]=T2.[C/S ANGLE2], 
              [BH SIZE2]=T2.[BH SIZE2],
              [COLOR]=T2.[COLOR], 
              [MRP Wheel]=T2.[STOCK NO],    
              [WO PN]=T2.[WHL-ASSY LOOKUP]

          FROM WORKORDERS T1 CROSS APPLY (SELECT TOP 1 *
             FROM [WHl] T2
             WHERE [WHEEL PN 1]=T2.[WHL-ASSY LOOKUP] OR 
                   [WHEEL PN 1-S]= T2.[STOCK NO]) T2
             END

我可以使用哪些其他选项来更新另一个表中的字段数据?

1 个答案:

答案 0 :(得分:0)

请尝试在表格上创建索引,这可能会提高插入和删除的速度