您的位置:首页 > 数据库

sql server 创建存储过程

2018-03-01 13:52 281 查看
首先先把我困惑的地方放到前面,后面在详细讲一下过程。在 “对象资源管理器”中,连接到 数据库引擎 的实例,然后展开该实例。
依次展开 “数据库”---》 “可编程性”。
右键单击“存储过程”,再单击“新建存储过程”



将会创建存储过程模板:


让我困惑的 <Procedure_Name, sysname, ProcedureName>   有什么用?
搜遍全网 也没答案。。。。

上图其实是一个存储过程模板。<Procedure_Name, sysname, ProcedureName> 等替换字符串标记为“指定模板参数的值“面板 提供替换字符标记的。只有这种作用,和存储过程没有关系。<Procedure_Name, sysname, ProcedureName> -- Add the parameters for the stored procedure here<@Param1, sysname, @p1> <Datatype_For_Param1, , int> = <Default_Value_For_Param1, , 0>, <@Param2, sysname, @p2> <Datatype_For_Param2, , int> = <Default_Value_For_Param2, , 0>  这些替换字符串标记只是为了编辑器“指定模板参数的值“面板 替换用的。点击sql server 的查询--->指定模板参数的值(快捷键ctrl+shift+m)。

弹出如下窗口:

这个窗口正是通过存储过程模板的特别标记字段。即上图以标记的对应关系寻找自定义字段的。如果删掉<Procedure_Name, sysname, ProcedureName> 



然后再重新打开“指定模板参数的值”面板如下图:创建存储过程
你会发现少了<Procedure_Name, sysname, ProcedureName> 对应的面板参数设置。

现在明白<Procedure_Name, sysname, ProcedureName>等文本的意思了吧。他只是为“指定模板参数的值”面板服务的。当你在“指定模板参数的值”面板设置了参数,存储过程将会把上面的模板如<Procedure_Name, sysname, ProcedureName>自动替换成你设置的参数。如果你不使用这个面板,那你应该删除这些标记(<Procedure_Name, sysname, ProcedureName>等),替换成你想要的参数。下面是我通过模板设置生成的存储过程:



上面的最终代码才是我们最终的存储过程代码。如果你不使用 “指定模板参数的值”面板设置参数,那么你应该手动替换删除上面的替换字符串标记最终的存储过程  样式如下: 

表红色框的才是一个存储过程改用的,其他字段需要我们去填写编辑

存储过程  创建

直接官网教程在对象资源管理器中创建过程在 “对象资源管理器”中,连接到 数据库引擎 的实例,然后展开该实例。
依次展开 “数据库”、 AdventureWorks2012 数据库和 “可编程性”。
右键单击“存储过程”,再单击“新建存储过程”。
在 “查询” 菜单上,单击 “指定模板参数的值”。
在 “指定模板参数的值” 对话框中,输入下列所示的参数值。
参数ReplTest1
作者您的姓名
创建日期今天的日期
Description返回雇员数据。
Procedure_nameHumanResources.uspGetEmployeesTest
@Param1@LastName
@Datatype_For_Param1nvarchar(50)
Default_Value_For_Param1NULL
@Param2@FirstName
@Datatype_For_Param2nvarchar(50)
Default_Value_For_Param2NULL
单击“确定” 。
在 “查询编辑器”中,使用以下语句替换 SELECT 语句:SQL复制
SELECT FirstName, LastName, Department
FROM HumanResources.vEmployeeDepartmentHistory
WHERE FirstName = @FirstName AND LastName = @LastName
AND EndDate IS NULL;

若要测试语法,请在 “查询” 菜单上,单击 “分析”。 如果返回错误消息,则请将这些语句与上述信息进行比较,并视需要进行更正。
若要创建该过程,请在 “查询” 菜单上单击 “执行”。 该过程作为数据库中的对象创建。
若要查看在对象资源管理器中列出的过程,请右键单击“存储过程”,然后选择“刷新”。
若要运行该过程,请在对象资源管理器中右键单击存储过程名称 HumanResources.uspGetEmployeesTest,然后选择“执行存储过程”。
在“执行过程”窗口中,输入 Margheim 作为参数 @LastName 的值,并输入值 Diane 作为参数 @FirstName 的值。
下图是我创建的存储过程:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  创建存储过程