博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MS SQL Server存储过程
阅读量:6222 次
发布时间:2019-06-21

本文共 1568 字,大约阅读时间需要 5 分钟。

1、Create、Alter和Drop

CREATE PROCEDURE USP_CategoryListAS    SELECT CategoryID,CategoryName    FROM Category

  在创建存储过程时,应该使用一致的规范来命名存储过程,而不要使用sp_,使用sp_只会导致名称冲突和混乱。可以使用usp_作为存储过程名的前缀,但即使不使用任何前缀,也比使用sp_好。

2、返回记录集

EXEC USP_CategoryList

3、编译存储过程

EXEC sp_recompile USP_CategoryList

4、查看存储过程

sp_helptext USP_CategoryList

5、加密存储过程

CREATE PROCEDURE USP_CategoryList    WITH ENCRYPTIONAS    SELECT CategoryID,CategoryName    FROM Category

6、输入参数

CREATE PROCEDURE USP_CategoryList(    @CategoryID INT)AS    SELECT CategoryID,CategoryName    FROM Category    WHERE CategoryID = @CategoryID
EXEC USP_CategoryList 1
EXEC StoredProcedure    @Parameter1 = n,    @Parameter2 = 'n'

7、参数的默认值

  调用存储过程时,必须为所有参数指定值,除非创建参数有默认值。

CREATE PROCEDURE StoredProcedure(    @Variable DataType = DefaultValue       )

8、输出参数

  使用output定义输出参数,在不需要返回整个记录集时,输出参数非常适合用于返回单个数据单元。返回单行数据时,使用输出参数比使用记录集快得多。

CREATE PROCEDURE USP_CategoryList(    @CategoryID INT,    @CategoryName VARCHAR(50) OUTPUT)AS    SELECT @CategoryName = CategoryName    FROM Category    WHERE CategoryID = @CategoryID
DECLARE @CategoryName VARCHAR(50)EXEC USP_CategoryList @CategoryID = 1, @CategoryName OUTPUTPRINT @CategoryName

9、return关键字

  return关键字无条件地终止存储过程的执行,并向调用它的批处理或客户返回一个值。

  使用返回值来指出运行是失败还是成功,而不是使用它返回实际数据。如果只需要返回一个值而不是这个数据集,可以使用输出参数。

EXEC @IntLocalVariable = storedProcedureName
CREATE PROCEDURE USP_IsItOK(    @OK VARCHAR(10)   )AS    IF @OK = 'OK'         RETURN 0    ELSE         RETURN -100
DECLARE @ReturnCode INTEXEC @ReturnCode = USP_IsItOK 'OK'PRINT @ReturnCodeEXEC @ReturnCode = USP_IsItOK 'NotOK'PRINT @ReturnCode

转载地址:http://keeja.baihongyu.com/

你可能感兴趣的文章
poj1731
查看>>
day10:vcp考试
查看>>
BestCoder Round #74 (div.2)
查看>>
Kruskal HDOJ 1863 畅通工程
查看>>
解决MyEclipe出现An error has occurred,See error log for more details的错误
查看>>
BZOJ4942 & UOJ314:[NOI2017]整数——题解
查看>>
109.110.100.56 samba用户名 PAS, 密码 111111
查看>>
MySql的replace into 语句
查看>>
410. Split Array Largest Sum
查看>>
转 Python爬虫实战二之爬取百度贴吧帖子
查看>>
hdu 4960 记忆化搜索 DP
查看>>
layuiadmin更新echarts
查看>>
beanstalk源码剖析——概述
查看>>
[转] socket异步编程--libevent的使用
查看>>
linux下安装mysql详细步骤
查看>>
ASP.NET根据URL生成网页缩略图示例程序(C#语言)
查看>>
Core Animation
查看>>
linux----别名
查看>>
struts2拦截器demo
查看>>
go基本操作
查看>>