我有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");
}
这是要明白你的想法;
| Dropdownlist1 | (我会点击这里,你知道名字会出现。)
-Mike
-John
-Susan
-Kevin
(label1)DAY1: _ __ _ __ (TEXTBOX1)
(label2)DAY2: _ __ _ __ (TEXTBOX2)
| FINISH | (按钮1)
从这里看,我将点击下拉列表,我将选择该员工。在我输入值之后,我将点击FINISH按钮,数据将被插入到所选员工中。
这是关键问题;我怎么能告诉button_click事件;您将这些数据插入到选定的员工表中,我从下拉列表中选择了该员工。好吗?
我试图在这里制作表格样本;
ID NAME TYPE MON TUE .... SUN TOTAL DAY1 DAY2 DATE
1迈克250 350 ..... 0 900 - - 2012年6月22日
2 john in 350 150 .... 100 1100 - - 28-06-2012
正如你从这里看到我的朋友,我将从我的datetimepickers中选择日期,我将从我的下拉列表中选择员工,然后我将值输入文本框,之后我将点击完成按钮。
必须将day1,day2值插入所选员工。
请等待你的回答,我需要它太糟糕了..
感谢。
用四只眼睛等待你的帮助。 感谢。
你明白我的意思是什么?感谢。
答案 0 :(得分: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();
答案 1 :(得分: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();
....
}
请注意,更改是使用DropdownList的SelectedValue
属性来查找正确的Id