如何在 SQL Server 中创建存储过程
在 SQL Server 中创建存储过程:
- 单击“SSMS”工具栏New Query
- 键入(或粘贴)语句(下面的示例)CREATE PROCEDURE
- 单击工具栏上的按钮Execute
这会将存储过程添加到数据库中。可以在对象资源管理器中的“存储过程”节点下看到它。
以下是上述步骤的屏幕截图和更多详细信息。
新建查询
在 SSMS 工具栏中单击:New Query
突出显示了带有“新建查询”按钮的 SSMS。
创建过程语句
键入语句。CREATE PROCEDURE
例
下面是一个语句示例:CREATE PROCEDURE
CREATE PROCEDURE LatestTasks @Count int AS SET ROWCOUNT @Count SELECT TaskName AS LatestTasks, DateCreated FROM Tasks ORDER BY DateCreated DESC
此脚本创建一个名为 LatestTasks 的存储过程,该过程接受名为 Count 的参数。
如何编写创建过程语句
你用 CREATE PROCEDURE [procedure_name] as 开始你的脚本。
例如,若要创建名为 GetCustomer 的存储过程,请从以下内容开始:
CREATE PROCEDURE GetCustomer AS
接下来是存储过程的 SQL 代码,就像上面的示例一样。
如果存储过程要接受参数,请将这些参数及其数据类型添加到第一行。在参数名称前面加上符号。@
例如,要添加数据类型为整数的名为 CustomerId 的参数:
CREATE PROCEDURE GetCustomer @CustomerId int AS
执行语句
单击工具栏上的按钮以运行创建存储过程的 SQL 语句。Execute
或者,按键盘上的键。F5
现在,您应该会在对象资源管理器中看到存储过程。
存储过程显示在对象资源管理器中的“存储过程”节点下。
执行存储过程
若要执行或调用存储过程,请使用 或 命令(两者都执行相同的操作)。EXECUTE``EXEC
所以可能是这样的:
EXECUTE GetCustomer @CustomerId = 7
或者这个:
EXEC GetCustomer @CustomerId = 7
上面传递了一个名为 CustomerId 的参数,其值为 7。更改此值将处理不同的客户。
以下屏幕截图显示了传递不同参数的效果。两个语句针对同一存储过程运行,但每个语句传递不同的参数值:EXEC
两个语句执行相同的存储过程,但参数值不同。在此特定存储过程中,参数确定返回的记录数。
从 GUI 执行存储过程
可以直接从 SSMS GUI 中的对象资源管理器调用存储过程。
只需右键单击存储过程并选择:Execute Stored Procedure…
从对象资源管理器中选择“执行存储过程”选项。
这将导致出现以下“执行过程”对话框,您可以在其中为存储过程将使用的任何参数提供值:
[执行程序]页面。您可以在此屏幕上提供任何参数的值。




