海纳百川,有容乃大
善于总结,积累软财富
posts - 161,  comments - 439,  trackbacks - 64

【标题】ExecuteNonQuery方法—小心使用

【内容】
   
   今天我的同事,被ExecuteNonQuery 方法给困住了。
   
    同事只知道ExecuteNonQuery返回受影响的行数,但不知道对于SQL 的 select命令返回值为-1。
     
   更准确的说法是

       对于 UPDATEINSERT DELETE   SQL 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1
  
     对于上面的说法,还有一点很重要:如果你使用的是存储过程,一定不要使用 SET NOCOUNT ON
      否则,返回的值仍为-1。(在.NET 1.1上测试过


【总结】哪怕是再简单的问题都要彻底搞明白,不要一知半解。

【tag】 SqlCommand对象 | ExecuteNonQuery方法 | 存储过程 | SET NOCOUNT ON
posted on 2006-11-17 14:35 海纳百川 阅读(2613) 评论(5)  编辑 收藏 网摘 所属分类: 数据库WEB开发/.NET

FeedBack:
2007-07-08 11:41 | kingwkb [未注册用户]
我使用的是sql 2005,使用存储过程中用SET NOCOUNT ON还是返回-1,不得已我用的别的方法
http://ddotnet.net
  回复  引用    
#2楼 [楼主]
2007-07-09 13:56 | 海纳百川      
@kingwkb
呵呵,谢谢你的验证。在sql 2005使用set nocount on , 对于 UPDATE、INSERT 和 DELETE SQL 语句ExecuteNonQuery,仍然返回-1
  回复  引用  查看    
2007-09-23 20:38 | Whicet      
非常感谢!困扰好入的问题今天得到了解决.
  回复  引用  查看    
2007-12-10 12:12 | 小箭 [未注册用户]
非常感谢!
正好遇到这样的问题。
  回复  引用    




标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-03-23 18:24 编辑过
Google站内搜索

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:

相关链接:
 

与我联系

搜索

 

留言簿(14)

我参与的团队

我的标签

随笔分类(173)

随笔档案(160)

文章分类(2)

Internet 资源

技术网站

友情链接

最新随笔

积分与排名

  • 积分 - 223905
  • 排名 - 161

最新评论

阅读排行榜

评论排行榜

Draging,what do you see!
首页原创.NET区 div1
.NET新手区 div2
精华区 div3
专家区 div4
读书心得区 div5
百度主题实验室
百度主题推广 div7