我有三个下拉列表,这些值将插入数据库中的一个特定字段中。但我是ASP的新手。
这是我的以下代码:
Dim strConn = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Dim myConn As New SqlConnection(strConn)
Dim cmd = "INSERT INTO [IndividualWorkout] (WorkoutProgramName, WorkoutProgramPosted, WorkoutProgramDesc, IndividualWorkoutName, IndividualWorkoutTips, TimingID) VALUES (@WorkoutProgramName, @WorkoutProgramPosted, @WorkoutProgramDesc, @IndividualWorkoutName, @IndividualWorkoutTips, @TimingID)"
Dim myCmd As New SqlCommand(cmd, myConn)
myCmd.Parameters.AddWithValue("@WorkoutProgramName", TextBox1.Text)
myCmd.Parameters.AddWithValue("@WorkoutProgramPosted", TextBox2.Text)
myCmd.Parameters.AddWithValue("@WorkoutProgramDesc", TextBox3.Text)
myCmd.Parameters.AddWithValue("@IndividualWorkoutName", TextBox4.Text)
myCmd.Parameters.AddWithValue("@IndividualWorkoutTips", TextBox5.Text)
myCmd.Parameters.AddWithValue("@TimingID", DropDownList4.SelectedValue.ToString())
myCmd.Connection = myConn
myConn.Open()
myCmd.ExecuteNonQuery()
myConn.Close()
有人可以指导我/帮我编辑以下代码,以便所选的3个下拉列表值将包含在TimingID中。
由于
答案 0 :(得分:1)
如果要连接值,可以这样做。
string s = DropDownList4.SelectedValue.ToString() + "|"
+ DropDownList5.SelectedValue.ToString() + "|"
+ DropDownList6.SelectedValue.ToString();
myCmd.Parameters.AddWithValue("@TimingID", s);
然后,当您使用.Split()或类似函数从该字段检索数据时,您将不得不解析出3个值。
就像注释一样,让ID字段使用连接字符串似乎很奇怪。我假设这个字段需要唯一性,使用下拉值的组合似乎存在风险。你有覆盖吗?