0

我需要修改一个存储过程,并且我想了解“修改”存储过程的实际作用。我有一个存储过程,其中有如下语句:

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

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

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

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

提前致谢!

4

2 回答 2

2

当您alter定义存储过程时,您所做的就是 - 更改所述过程中的定义/代码。它不会进入execute程序,要这样做,您需要exec在程序完成后进行程序alter

于 2013-04-24T13:56:39.000 回答
1

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

当您在资源管理器中找到您的程序然后点击执行时,它将运行该程序。

于 2013-04-24T13:56:50.120 回答