c#

位置:IT落伍者 >> c# >> 浏览文章

总结:ADO.NET在开发中的部分使用方法和技巧[6]


发布日期:2019年07月04日
 
总结:ADO.NET在开发中的部分使用方法和技巧[6]

使用存储过程输出参数来检索单个值

建立一个 SqlCommand 对象来调用存储过程

通过将 SqlParameters 添加到 SqlCommand 的 Parameters 集合中设置任何输入参数和单个输出参数

打开连接

调用 SqlCommand 对象的 ExecuteNonQuery 方法

关闭连接

通过使用输出 SqlParameter 的 Value 属性来检索输出值

上述代码使用了以下存储过程

CREATE PROCEDURE LookupProductNameSPOutput

@ProductID int

@ProductName nvarchar() OUTPUT

AS

SELECT @ProductName = ProductName

FROM Products

WHERE ProductID = @ProductID

GO

以下代码阐明了如何使用返回值来指明是否存在特定行从编码角度来看这类似于使用存储过程输出参数不同之处在于必须将 SqlParameter 方向显式设置为 ParameterDirectionReturnValue

bool CheckProduct( int ProductID )

{

using( SqlConnection conn = new SqlConnection(

server=(local);Integrated Security=SSPI;database=northwind) )

{

SqlCommand cmd = new SqlCommand(CheckProductSP conn );

cmdCommandType = CommandTypeStoredProcedure;

cmdParametersAdd(@ProductID ProductID );

SqlParameter paramRet =

cmdParametersAdd(@ProductExists SqlDbTypeInt );

paramRetDirection = ParameterDirectionReturnValue;

connOpen();

cmdExecuteNonQuery();

}

return (int)paramRetValue == ;

}

通过使用存储过程返回值来检查是否存在特定行

建立一个 SqlCommand 对象来调用存储过程

设置一个输入参数该参数含有要访问的行的主键值

设置单个返回值参数将一个 SqlParameter 对象添加到 SqlCommand 的 Parameters 集合中并将其方向设置为 ParameterDirectionReturnValue

打开连接

调用 SqlCommand 对象的 ExecuteNonQuery 方法

关闭连接

通过使用返回值 SqlParameter 的 Value 属性来检索返回值

[] [] [] [] [] [] [] [] []

               

上一篇:总结:ADO.NET在开发中的部分使用方法和技巧[2]

下一篇:总结:ADO.NET在开发中的部分使用方法和技巧[4]