-1

以下の方法でデータベースにレコードを挿入しようとしています。ボタンクリックイベントでこのメソッドを呼び出していますが、何らかの理由でレコードが挿入されていません。

挿入する必要のあるフィールドは4つあります。rpttemplateid-別のデータベーステーブルからそのフィールドを取得していますが、他のすべてのフィールドは静的な値です。

私は以下で何が間違っていますか?

public void updatereporttemplate()
{
    string cnn = WebConfigurationManager.ConnectionStrings["Underwriting"].ConnectionString;
    SqlConnection cnn1 = new SqlConnection(cnn);
    cnn1.Open();
    string getrptdesc = "select max(rptdesc) + 1 from report_description where rptdesc < 999 and rptdesc is not null";
    SqlCommand cmd = new SqlCommand(getrptdesc, cnn1);
    SqlDataReader sdr = cmd.ExecuteReader();
    sdr.Read();

    int getcount = int.Parse(sdr[0].ToString());
    sdr.Close();
    string commandtext1 = "INSERT INTO report_template" + "(rpttemplateid,rpttemplatedescr,minsubs,minmebers) " +
          " Values( " + getcount  + "," + "  " + " ,  " +  0  + "," + 0  + ")";
    SqlCommand command1 = new SqlCommand
    {
        CommandText = commandtext1,
        Connection = cnn1

    };
4

2 に答える 2

2

あなたは行方不明ですcommand1.ExecuteNonQuery();

また、カウントを手動で設定する代わりに、テーブルでIDENTITY列を使用することを検討しましたか?そのページが同時に複数の人にヒットした場合はどうなりますか?

于 2012-11-09T16:26:41.203 に答える
0

接続を開く必要があります

cnn1.Open();

そして、コマンドを実行します

command1.ExecuteNonQuery();
于 2012-11-09T16:28:31.300 に答える