c#

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

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


发布日期:2021年08月11日
 
总结:ADO.NET在开发中的部分使用方法和技巧[5]

如何使用 ExecuteScalar 来检索单个项

ExecuteScalar 方法专门适用于仅返回单个值的查询如果查询返回多个列和/或行ExecuteScalar 将只返回第一行的第一列

以下代码说明了如何查找与特定产品 ID 相对应的产品名称

void GetProductNameExecuteScalar( int ProductID out string ProductName )

{

using( SqlConnection conn = new SqlConnection(

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

{

SqlCommand cmd = new SqlCommand(LookupProductNameScalar conn );

cmdCommandType = CommandTypeStoredProcedure;

cmdParametersAdd(@ProductID ProductID );

connOpen();

ProductName = (string)cmdExecuteScalar();

}

}

使用 ExecuteScalar 来检索单个项

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

打开连接

调用 ExecuteScalar 方法注意该方法返回一个对象类型它包含检索到的第一列的值并且必须转化为适当的类型

关闭连接

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

CREATE PROCEDURE LookupProductNameScalar

@ProductID int

AS

SELECT TOP ProductName

FROM Products

WHERE ProductID = @ProductID

GO

如何使用存储过程输出或返回参数来检索单个项

可以使用存储过程输出或返回参数来查找单个值以下代码阐明了输出参数的用法

void GetProductNameUsingSPOutput( int ProductID out string ProductName )

{

using( SqlConnection conn = new SqlConnection(

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

{

SqlCommand cmd = new SqlCommand(LookupProductNameSPOutput conn );

cmdCommandType = CommandTypeStoredProcedure;

SqlParameter paramProdID = cmdParametersAdd(@ProductID ProductID );

ParamProdIDDirection = ParameterDirectionInput;

SqlParameter paramPN =

cmdParametersAdd(@ProductName SqlDbTypeVarChar );

paramPNDirection = ParameterDirectionOutput;

connOpen();

cmdExecuteNonQuery();

ProductName = paramPNValueToString();

}

}

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

               

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

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