回答

收藏

将存储过程中的单个值返回到.Net:OUTPUT参数或ExecuteScalar更好?

技术问答 技术问答 205 人阅读 | 0 人回复 | 2023-09-13

我需要创建一个存储过程,该过程需要返回一些记录的计数。我正在使用.Net读取结果。
' }/ D& F$ |' ^8 r" {我可以使用OUTPUT参数返回值 , 也可以select
+ M9 e9 y! i3 D3 }- fcount(*)在存储过程中使用a并使用SqlCommand.ExecuteScalar读取它。
, p& L. v4 g2 O6 Z9 f有什么更好的,为什么?2 R8 l% B- R0 n( j4 M
                9 M' [0 _1 j8 a# [1 L
解决方案:2 W/ O: ]' @9 `% _) W) ~
               
/ L+ n$ h  H2 t  |/ r8 y
& A( k( e' q# W0 C* j
. K$ O+ A* R- m$ B( M: z6 U; o                查阅此MSDN文章:性能比较:数据访问技术  
9 ]/ N: g& e# _, j! f本文在性能测试中显示,GetOrderStatus对于检索 单个值: ]! F7 U: Y; v; t  \- A
,OUTPUT参数和ExecuteScaler之间的性能相同,但是ExecuteScalar需要较少的代码。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则