请帮助我了解c#的新内容只是读了它脚本上的错误它没有生成下一个数字 错误显示“使用分配的局部变量max” 在这一行
"maxCommand.Parameters.Add("@acn", SqlDbType.VarChar).Value = max.ToString();"
完整编码
private void contact_edit_Click(object sender, EventArgs e)
{
int max;
SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=D:\\fuda\\Fuda.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
con.Open();
SqlCommand maxCommand = new SqlCommand();
maxCommand = con.CreateCommand();
maxCommand.CommandText = ("SELECT max(acn) from contacts");
maxCommand.Parameters.Add("@acn", SqlDbType.VarChar).Value = max.ToString();
maxCommand.ExecuteNonQuery();
max = max ++;
acn.Text = max.ToString();
}
如何安排???
example acn = 2253 \\ in table "contact" coulmn acn (A/c number)
if acn = 2253 \\collected max number from acn
acn + 1 \\ add 1 to acn
acn = 2254 \\this should be generate
答案 0 :(得分:0)
max的启动值未知。分配值可以解决问题。
int max = 0;
要查找最大值和下一个值,您可以尝试
maxCommand.CommandText = ("SELECT acn FROM contacts ORDER BY acn DESC");
SqlDataReader reader = maxCommand.ExecuteReader();
reader.Read();
max = Convert.ToInt32(reader[0]); // the max value
max++;// the next value
acn.Text = max.ToString();