sql-server – T-SQL存储过程 – 检测参数是否作为OUTPUT提供
发布时间:2020-05-24 13:45:40 所属栏目:MsSql 来源:互联网
导读:请考虑以下T-SQL代码段: CREATE PROC dbo.SquareNum(@i INT OUTPUT)ASBEGIN SET @i = @i * @i --SELECT @iENDGODECLARE @a INT = 3, @b INT = 5EXEC dbo.SquareNum @a OUTPUTEXEC dbo.SquareNum @bSELECT @
|
请考虑以下T-SQL代码段: CREATE PROC dbo.SquareNum(@i INT OUTPUT)
AS
BEGIN
SET @i = @i * @i
--SELECT @i
END
GO
DECLARE @a INT = 3,@b INT = 5
EXEC dbo.SquareNum @a OUTPUT
EXEC dbo.SquareNum @b
SELECT @a AS ASQUARE,@b AS BSQUARE
GO
DROP PROC dbo.SquareNum
结果集是: ASQUARE BSQUARE ----------- ----------- 9 5 可以看出,@ b不是平方,b / c它没有作为输出参数传入(传入参数时没有OUTPUT限定符). 我想知道是否有一种方法可以检查存储过程体(在本例中为dbo.SquareNum体),以查看参数是否确实已作为OUTPUT参数传入? 解决方法------ THIS WILL GIVE YOU THE BOTH VALUE IN squared------
CREATE PROC dbo.SquareNum(@i INT OUTPUT)
AS
BEGIN
SET @i = @i * @i
--SELECT @i
END
GO
DECLARE @a INT = 3,@b INT = 5
EXEC dbo.SquareNum @a OUTPUT
EXEC dbo.SquareNum @b OUTPUT
SELECT @a AS ASQUARE,@b AS BSQUARE
GO
DROP PROC dbo.SquareNum
-----TO CHECK STORED PROCEDURE BODY-----
SELECT OBJECT_NAME(object_id),OBJECT_DEFINITION(object_id)
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) =(SP_NAME) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- sql – Oracle – 将多个计数作为一个查询返回
- shell监控脚本实例―监控mysql主从复制
- sql-server – sql 2005中的PIVOT
- SQL Server 2008中的临时表上的sql-server – no
- MySQL中count(*)、count(1)和count(col)的区别汇
- 在大数据情况下MySQL的一种简单分页优化方法
- 如何在SQL 2005 Reporting Services报告的标题中
- SQL Server 数据库连接字符串中的可选项收集
- SQL Server -- 回忆笔记(五):T-SQL编程,系统
- sql-server – 如何将主键设为AUTOINCREMENT
热点阅读
