修改存储过程只是更新存储过程定义吗?

时间:2013-04-24 13:54:54

标签: sql sql-server stored-procedures

我需要修改存储过程,并希望了解存储过程实际上做什么“修改”。我有一个存储过程,并在其中声明如下:

ALTER PROCEDURE [dbo].[get_orders]
    INSERT INTO customer (id, date, name) 
    VALUES(@id, getdate(), @name)

    SELECT
    full_id,
    fname,
    lname,
    ...
    FROM orders

如果我修改了这个存储过程(右键单击SSMS中的sp,并选择“Modify”),例如在Select语句中添加一列,然后单击“执行”(或按F5),这会更新存储过程定义,还是它还“运行”其中的代码,例如,运行“INSERT”语句(或者如果有“DELETE”)并实际插入(或删除)?

我假设它只是更新存储过程,而不是实际运行查询,但我只是想确定。对不起,如果这个问题看起来很基本,但我找不到答案。

提前致谢!

2 个答案:

答案 0 :(得分:2)

当你alter存储过程的定义时,你正在做的就是改变所述过程中的定义/代码。这样做不会execute这样做,在exec编辑后,您需要alter您的程序。

答案 1 :(得分:1)

如果你在该语句上执行它应该只存储过程更改。

当你在资源管理器中找到你的程序然后点击执行它然后运行程序。