0

嗨,此语句在存储过程中执行。我正在传递参数,它正在执行多次更新和插入。我会很感激一些建议来提高性能,减少执行时间和改进代码结构。共有三个不同的表:Table_01、Table_02、Table_03。

INSERT INTO Table_01(
    TestID,     
    TestData,
    CurrentDate,
    UserID,
    Status
) VALUES (
    @testID,        
    @testData,
    @iDateTime,
    @userID,
    @Status
)

IF (@Status = 1) 
BEGIN 

    DELETE FROM
        Table_02
    WHERE 
        TestID = @testID

    UPDATE Table_03
    SET
        Status = 1,
        Date = @iDateTime,
        Work = 0
    WHERE
        TestID = @testID
END
4

1 回答 1

1

老实说,没有太多需要调整的地方:它是简单的代码,没什么花哨的

您可以添加一个事务,使其全部写入成功或全部写入失败。

如果您发现代码很慢,那么我会查看 TestID 上的索引,您是否有触发器

于 2011-01-21T19:33:31.280 回答