社区
C#
帖子详情
一个值为0的object,为何不能强制转换为int值?
doocoo
2006-09-11 02:51:04
sql为:select max(id) from tb_temp
object objTemp=dbCommand.ExecuteScalar();
察看objTemp,值为0,结果执行int i=(int)objTemp,报错"无法执行转换"
为什么?
...全文
725
16
打赏
收藏
一个值为0的object,为何不能强制转换为int值?
sql为:select max(id) from tb_temp object objTemp=dbCommand.ExecuteScalar(); 察看objTemp,值为0,结果执行int i=(int)objTemp,报错"无法执行转换" 为什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhiming99
2006-09-11
打赏
举报
回复
我也一样遇到这样的问题,一4星的哥们告诉我这个的,看了看MSDN才明白,你也看一看吧
zhiming99
2006-09-11
打赏
举报
回复
看看DBNull.Value 就明白了
chaircat
2006-09-11
打赏
举报
回复
Convert.ToInt32()应该可以...
另外...这样也行
if(dbComm.ExecuteScalar().ToString()=="0")
id = 0;
else
id = (int)dbComm.ExecuteScalar();
嘻嘻...
mrluoluo
2006-09-11
打赏
举报
回复
用Convert.toInt32,参数可以给object的,应该就没问题了吧?
doocoo
2006-09-11
打赏
举报
回复
自己再顶一下,不信没人懂了
alex_zgx
2006-09-11
打赏
举报
回复
我也遇到过这样的问题,强烈关注!
doocoo
2006-09-11
打赏
举报
回复
有没有人知道为什么啊
doocoo
2006-09-11
打赏
举报
回复
是广告吧
qinglangdetian
2006-09-11
打赏
举报
回复
楼上的能不能具体一下? 找不到啊
shadj_123
2006-09-11
打赏
举报
回复
http://www.mzedu.com/
这个网站上有答案!
doocoo
2006-09-11
打赏
举报
回复
补充:当max(id)不为0的时候,没有这个问题
doocoo
2006-09-11
打赏
举报
回复
用了long,还是不行
刚刚做了测试如下:
数据库内容:
id name
0 wawa
OledbDataCommand dbComm=new OleDbDataCommand("select max(id) from tb_temp",myConn);
MessageBox.Show(dbComm.ExecuteScalar().GetType().ToString());
显示:System.Int16
然后:
OledbDataCommand dbComm=new OleDbDataCommand("select max(id) from tb_temp",myConn);
MessageBox.Show(dbComm.ExecuteScalar().ToString());
显示:0
然后:
OledbDataCommand dbComm=new OleDbDataCommand("select max(id) from tb_temp",myConn);
int maxid=(int)dbComm.ExecuteScalar();//在这里报错:指定的转换无效,使用long maxid=(long)dbComm.ExecuteScalar();也不行
MessageBox.Show(maxid.ToString());
为什么?百思不解
Avoid
2006-09-11
打赏
举报
回复
使用long
doocoo
2006-09-11
打赏
举报
回复
id字段在access中是长整型的,而且当id的最大值大于0的时候,这个程序可以顺利运行.请指教.
MyLf
2006-09-11
打赏
举报
回复
可能id字段是不整型的.
namhyuk
2006-09-11
打赏
举报
回复
int x = int.Parse(dbCommand.ExecuteScalar().ToString());试试
Java进阶:
Object
类与常用API
Java面向对象是本门课程的前导课程,学习本门课程需要先学习Java基本语法和面向对象相关知识,本门课程系统介绍了
Object
类,日期类,String类,StringBuilder类,装箱拆箱等知识,课程没有一句废话,能够让你用最快...
无法将类型
int
?隐式转换为
int
,存在
一个
显示转换(是否缺少
强制转换
)
,就表示这个
值
类型的允许为空 可以用HasValue来判断是否存在
值
也可以在赋
值
的时候,后面加上??和默认
值
来表示如果为空的时候,就获取默认
值
int
? a = null;
int
b = a ?? 0; 比如这样,b这里就不会报错,...
c#强制类型转换
int
在 C# 中有三种方法把其它类型转为整型,分别是
int
.Parse()、
强制转换
(
int
) 和 Convert.To
Int
32(),下面探讨它们各自的特点及效率。 1、
int
.Parse() 方法 该方法只能把字符型(string)转换为整型(
int
),如果...
Object
类型转换为
int
型
Object
类型转换成
int
型
int
类型
强制转换
为
object
类型是否可行?
class Program { static void Main(string[] args) {
object
a = 2;
int
b = 2; if (a == (
object
)b) { Console.WriteLine("
int
类型
强制转换
C#
110,538
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章