thisCommand.CommandText = "SELECT [普通加班时间], [周末加班时间], [旷工天数], [请假天数] FROM [考勤表] WHERE [年]='" + DropDownList1.SelectedValue + "' and [月]='" + DropDownList2.SelectedValue + "' and [员工姓名]='" + DropDownList3.SelectedValue + "'";
SqlDataReader time = thisCommand.ExecuteReader();
int tpt, tzm, tkg, tqj;
while (time.Read())
{
tpt = Convert.ToInt32(time[0]);
tzm = (int)time["周末加班时间"];
tkg = (int)time["旷工天数"];
tqj = (int)time["请假天数"];
}当我使用上面定义的tpt,tzm,tkg,tqj进行计算的时候,比如ttotal=tpt + tzm + tkg + tqj;会提示“使用了未赋值的局部变量tpt,tzm,tkg,tqj”,可是数据库中明明有数据的。这样应该怎么处理?我是想把从数据库读出的数据定义成变量,然后计算。如果我的思路有问题,那么应该怎样做?请各位帮忙啦
SqlDataReader time = thisCommand.ExecuteReader();
int tpt, tzm, tkg, tqj;
while (time.Read())
{
tpt = Convert.ToInt32(time[0]);
tzm = (int)time["周末加班时间"];
tkg = (int)time["旷工天数"];
tqj = (int)time["请假天数"];
}当我使用上面定义的tpt,tzm,tkg,tqj进行计算的时候,比如ttotal=tpt + tzm + tkg + tqj;会提示“使用了未赋值的局部变量tpt,tzm,tkg,tqj”,可是数据库中明明有数据的。这样应该怎么处理?我是想把从数据库读出的数据定义成变量,然后计算。如果我的思路有问题,那么应该怎样做?请各位帮忙啦
while (time.Read())
{
tpt = Convert.ToInt32(time[0]);
tzm = (int)time["周末加班时间"];
tkg = (int)time["旷工天数"];
tqj = (int)time["请假天数"];
}先赋值,不然编译程序怎么知道你那能进循环,如果不进循环,你就是null,就会异常
不满足,当然变量就没赋值啊,所以要进行初始值