1

pls help im new on 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
4

1 に答える 1

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();
于 2013-01-04T15:45:27.247 に答える