我正在尝试使用以下代码从我的数据库中获取Score_Waarde
值:
critid = critid_arr[teller2].ToString();
int scorehulp = 0;
string userid = Session["userid"].ToString();
SqlCommand cmd3 = new SqlCommand("SELECT Score_Waarde FROM Score WHERE Crit_ID = '" + critid + "' AND User_ID = '" + userid + "' ", con);
scorehulp = (int)cmd3.ExecuteScalar();
当我尝试运行此代码时,会出现以下错误:指定的转换无效。 我不明白为什么会出现这个错误,因为
critid
和userid
分别已经传递了正确的值。
System.Int32
类型,那么程序将出现致命错误。(例如,如果它返回long
或byte
,程序将无法正常工作。)最好的方法是验证并修复假设,使用调试器可以跳过20个步骤 :-) - user166390Null
值要小心。Int32.Parse(cmd3.ExecuteScalar().ToString())
- Tim SchmelterDBNull
。 - ta.speot.isint?
)可能不是一个坏主意。 - dana