标题:数据库连接时出错了!
只看楼主
qq645485165
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:197
注 册:2013-3-16
结帖率:100%
已结贴  问题点数:10 回复次数:4 
数据库连接时出错了!
sql语句放在数据库中能找到所在的行,但是抛出异常为什么?
搜索更多相关主题的帖子: sql语句 数据库连接 
2013-04-17 17:55
yhlvht
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:36
帖 子:707
专家分:4405
注 册:2011-9-30
得分:0 
理论上来说,异常不会是SqlCommand sqc = new SqlCommand(sql, scn);这句抛出来的
我没有打开任何数据库,然后代码中随意写了SqlCommand com = new SqlCommand("", new SqlConnection());这样一句,执行的时候也没有抛异常

估计异常是i = (int)sqc.ExecuteScalar();这句抛出来的
ExecuteScalar()方法的返回值是一个object类型,它的返回值未必可以强转为int型,所以你可以先用object obj = sqc.ExecuteScalar();看一下返回值到底是什么,若返回的不是int型的值,这样转肯定有问题的
2013-04-17 18:17
qq645485165
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:197
注 册:2013-3-16
得分:0 
我感觉没错啊
2013-04-17 20:56
qq645485165
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:197
注 册:2013-3-16
得分:0 
刚才发错了
2013-04-17 20:58
yhlvht
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:36
帖 子:707
专家分:4405
注 册:2011-9-30
得分:10 
别说object,string都不能强转为int,除非object里面放的就是int,才可以强转
用方法转吧,例如int.Parse(obj.ToString());
2013-04-17 22:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-404577-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.088722 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved