如何指定输出参数,当您使用在 sp _ executesql SQL Server 中存储过程
2009-03-16 11:08
676 查看
sp _ executesql 系统存储过程用于执行 T-SQL 语句的可重复使用多次,或执行动态生成的 T-SQL 语句。 需要作为输入参数才处理 T-SQL 语句或批次。 它还允许指定以便从 T-SQL 语句生成任何输出可存储 (尽管这未记录 SQL Server 联机丛书中) 的输出参数。
在该输出参数将 sp _ executesql 有用的两种情况是:
如果 sp _ executesql 生成将非常有用的输出,则存储输出参数此输出将允许调用批处理的更高版本的查询中使用参数。
如果 sp _ executesql 执行存储的过程定义使用输出参数的输出参数的 sp _ executesql 用于保存从存储过程生成的输出。
下面的两个示例演示使用输出参数,使用 sp _ executesql 。
示例 1
[/code]
示例 2
[/code]
在该输出参数将 sp _ executesql 有用的两种情况是:
如果 sp _ executesql 生成将非常有用的输出,则存储输出参数此输出将允许调用批处理的更高版本的查询中使用参数。
如果 sp _ executesql 执行存储的过程定义使用输出参数的输出参数的 sp _ executesql 用于保存从存储过程生成的输出。
下面的两个示例演示使用输出参数,使用 sp _ executesql 。示例 1 DECLARE @SQLString NVARCHAR(500) DECLAR...
下面的两个示例演示使用输出参数,使用 sp _ executesql 。示例 1
[code]DECLARE @SQLString NVARCHAR(500) DECLARE @ParmDefinition NVARCHAR(500) DECLARE @IntVariable INT DECLARE @Lastlname varchar(30) SET @SQLString = N'SELECT @LastlnameOUT = max(lname) FROM pubs.dbo.employee WHERE job_lvl = @level' SET @ParmDefinition = N'@level tinyint, @LastlnameOUT varchar(30) OUTPUT' SET @IntVariable = 35 EXECUTE sp_executesql @SQLString, @ParmDefinition, @level = @IntVariable, @LastlnameOUT=@Lastlname OUTPUT SELECT @Lastlname
[/code]
示例 2
[code]CREATE PROCEDURE Myproc @parm varchar(10), @parm1OUT varchar(30) OUTPUT, @parm2OUT varchar(30) OUTPUT AS SELECT @parm1OUT='parm 1' + @parm SELECT @parm2OUT='parm 2' + @parm GO DECLARE @SQLString NVARCHAR(500) DECLARE @ParmDefinition NVARCHAR(500) DECLARE @parmIN VARCHAR(10) DECLARE @parmRET1 VARCHAR(30) DECLARE @parmRET2 VARCHAR(30) SET @parmIN=' returned' SET @SQLString=N'EXEC Myproc @parm, @parm1OUT OUTPUT, @parm2OUT OUTPUT' SET @ParmDefinition=N'@parm varchar(10), @parm1OUT varchar(30) OUTPUT, @parm2OUT varchar(30) OUTPUT' EXECUTE sp_executesql @SQLString, @ParmDefinition, @parm=@parmIN, @parm1OUT=@parmRET1 OUTPUT,@parm2OUT=@parmRET2 OUTPUT SELECT @parmRET1 AS "parameter 1", @parmRET2 AS "parameter 2" go drop procedure Myproc
[/code]
相关文章推荐
- Oracle中使用PL/SQL如何定义参数、参数赋值、输出参数和 if 判断
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- [代码]如何使用带参数的存储过程(LINQ to SQL)
- 执行动态 sql 并为 输出参数赋值、sp_executesql 使用方法
- 收集到的:如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- 执行动态 sql 并为 输出参数赋值、sp_executesql 使用方法
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 执行动态 sql 并为 输出参数赋值、sp_executesql 使用方法
- [译]DbContext API中使用SqlQuery和ExecuteSqlCommand获取存储过程的输入输出参数
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- com.microsoft.sqlserver.jdbc.SQLServerException: 此查询使用的不是 ANSI 外部联接运算符("*=" 或 "=*")。若要不进行修改即运行此查询,请使用存储过程 sp_dbcmptlevel 将当前数据库的
- sql server exec sp_executesql 输出参数
- sql 2005中sp_executesql系统存储过程带输出参数 OUTPUT 的使用说明
- MS SQL Server存储过程参数的隐式类型转换
- (转)SqlHelper 使用中需要注意的一点(带输出、返回参数的存储过程)
- 润乾报表v4中sql和参数信息输出到指定文件
- winfrom SQL server 控件Listbox 输出数据表中的所有行和指定列
- Microsoft SQL Server 2000在复制的时候包含两个过程,攻击者可以操作输入提供恶意参数给存储过程,可导致执行任意命令。
- 使用带有输出参数的存储过程
- .NET用使用存储过程获取输出参数的代码示例!