0

我有具有下拉列表的asp.net 项目。我需要根据下拉列表条件将数据插入我的数据库。

例如; 在我的项目中,我将选择员工并从我的文本框中插入一些值,然后单击底部的按钮后,我需要将更改插入从下拉列表中选择员工的数据库中。

这是按钮点击代码;

protected void Button2_Click(object sender, EventArgs e)
{
    SqlConnection conn;
    SqlCommand cmd = new SqlCommand();
    string strSQL = "UPDATE info (empid,day1,day2,date1) Values (@empid,@day1,@day2,@date1)";
    string bag_str = WebConfigurationManager.ConnectionStrings["asgdb01ConnectionString"].ConnectionString;
    conn = new SqlConnection(bag_str);
    conn.Open();
    cmd.Connection = conn;
    cmd.CommandText = strSQL;
    cmd.Parameters.Add(new SqlParameter("@day1", Int32.Parse(DropDownList1.SelectedItem.Value)));
    cmd.Parameters.Add(new SqlParameter("@day1", Int32.Parse(TextBox1.Text)));
    cmd.Parameters.Add(new SqlParameter("@day2", Int32.Parse(TextBox2.Text)));
    cmd.Parameters.Add(new SqlParameter("@date1", CalendarExtender1.SelectedDate));
    int i = cmd.ExecuteNonQuery();
    conn.Close();
    if (i > 0)
        Response.Write("Data Inserted");
    else
        Response.Write("Try Again");

}

这里有一些事情要让你清楚;

|下拉列表1| (我会点击这里,名字会出现你知道的。)

-麦克风

-约翰

-苏珊

-凯文

(label1) DAY1 : _ __ _ __ (TEXTBOX1)

(label2) DAY2: _ __ _ __ (TEXTBOX2)

|完成| (按钮 1)

您从这里看到,我将单击下拉列表,然后我将选择员工。在我输入值后,我将单击“完成”按钮,数据将被插入到该选定的员工中。

这是关键问题;我如何告诉 button_click 事件;您将这些数据插入到我从下拉列表中选择员工的选定员工表中。好的 ?

我试图在这里制作表格样本;

ID NAME TYPE MON TUE .... SUN TOTAL DAY1 DAY2 DATE


1 迈克出 250 350 ..... 0 900 - - 22-06-2012

2 约翰在 350 150 .... 100 1100 - - 28-06-2012

正如您从这里看到的,我的朋友,我将从我的 datetimepickers 中选择日期,我将从我的下拉列表中选择员工,然后将值输入到文本框中,然后单击完成按钮。

day1,day2 值必须插入到所选员工中。

请等待你的回答,我太需要它了..

谢谢。

四眼等待您的帮助。谢谢。

你明白我的意思吗我的朋友们?谢谢。

4

2 回答 2

1

您可以通过获取下拉列表的选定值将选定的员工值插入数据库。

int empID = Convert.ToInt32(ddlEmployee.SelectedValue);
SqlConnection conn;
SqlCommand cmd = new SqlCommand();
string strSQL = "Insert INTO info (empid, day1,day2) Values (@empid, @day1,@day2)";
string bag_str = WebConfigurationManager.ConnectionStrings["asgdb01ConnectionString"].ConnectionString;
conn = new SqlConnection(bag_str);
conn.Open();
cmd.Connection = conn;
cmd.CommandText = strSQL;
cmd.Parameters.Add(new SqlParameter("@empid", empID));
cmd.Parameters.Add(new SqlParameter("@day1", TextBox1.Text));
cmd.Parameters.Add(new SqlParameter("@day2", TextBox2.Text));

int i = cmd.ExecuteNonQuery();
conn.Close();
于 2013-01-01T16:28:13.130 回答
0

如果您没有设置下拉列表的SelectedValue,则应将其设置为员工的 id。

然后,修改您的函数以同时考虑下拉列表中的值,如下所示:

protected void Button2_Click(object sender, EventArgs e)
{
    SqlConnection conn;
    SqlCommand cmd = new SqlCommand();
    string strSQL = "Insert INTO info (id, day1,day2) Values (@id, @day1,@day2)";
    string bag_str = WebConfigurationManager.ConnectionStrings["asgdb01ConnectionString"].ConnectionString;
    conn = new SqlConnection(bag_str);
    conn.Open();
    cmd.Connection = conn;
    cmd.CommandText = strSQL;
    cmd.Parameters.Add(new SqlParameter("@id", Int32.Parse(DropDownList1.SelectedValue)));
    cmd.Parameters.Add(new SqlParameter("@day1", TextBox1.Text));
    cmd.Parameters.Add(new SqlParameter("@day2", TextBox2.Text));

    int i = cmd.ExecuteNonQuery();
    conn.Close();
    ....
}

请注意,更改是使用SelectedValueDropdownList 的属性来查找正确的 Id

于 2013-01-01T16:05:39.897 回答