数据库中id字段为自增列(长整形)
程序中获取行集OleDbDataReader dr ,定义变量 long id;
id = dr.GetInt64(0); 报错“指定的转换无效”
id = Convert.ToInt64(dr[0]); 正确,
dr是绝对存在的。请问什么原因。
dr.GetInt32(0) 用这个试试,数据库的int类型对应C#的是int32的。
我知道用dr.GetInt32(0)可以,就是不知道不能用GetInt64的原因,数据库中的长整形对应的就是long啊
@滴水冰寒: 你是long就要用double了。int64也不够了。Convert.ToInt64是强制转换,会把多余的值切掉的。
一楼正解,学习了