将数据插入SQL Server数据库时遇到问题。我正在研究学校管理系统。我有2个用户(管理员和员工)。管理员创建/设置工作人员的所有基本需求。
这里,admin正在添加课程详细信息。因此,第一步是在STDMS_ClassDetails
数据库中添加一个类,部分和强度。之后,科目字段将被更新。
现在,添加新类的流程如下:
在create class选项卡下,Admin设置类的范围。例如:1级到10级。
然后管理员选择如何添加部分,类的强度。
2.I。如果他选择1by1选项,那么他需要选择每个类,部分和&阶级的力量。
物2.ii。如果他选择了组选项,则所有上述类将同时具有相同的部分和强度。
这是我的数据库。
&安培;这是我的前端。
没有错误消息,但数据库没有更新。所以,我必须在这段代码中遗漏一些东西。请帮我纠正并使这段代码有效。
我的代码如下所示:
Private Sub btnCCSave_Click(sender As Object, e As EventArgs) Handles btnCCSave.Click
If MsgBox("You are going to add new classes into your database." + vbCrLf + vbCrLf + "Are you sure?", vbInformation + vbYesNo, "Add new classes.") = vbYes Then
If rb_1by1.Checked = True Then
con.Open()
Try
Using cmd As New SqlCommand("INSERT INTO STDMS_ClassDetails(Class_ID, Section, Class_Strength) VALUES(@d1, @d2, @d3)", con)
With cmd
For i As Integer = 1 To updownTotalSections.Value
.Parameters.AddWithValue("@d1", Integer.Parse(cbCCClass.Text))
Select Case i
Case 1
.Parameters.AddWithValue("@d2", "A")
Exit Select
Case 2
.Parameters.AddWithValue("@d2", "B")
Exit Select
Case 3
.Parameters.AddWithValue("@d2", "C")
Exit Select
Case 4
.Parameters.AddWithValue("@d2", "D")
Exit Select
Case 5
.Parameters.AddWithValue("@d2", "E")
Exit Select
End Select
.Parameters.AddWithValue("@d3", updownTotalStrength.Value)
Next
End With
End Using
con.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
ElseIf rb_Group.Checked = True Then
Try
MsgBox("try")
For i As Integer = updownLB.Value To updownUP.Value
MsgBox("for i = " + i.ToString)
For j As Integer = 1 To updownTotalSections.Value
MsgBox("for j = " + j.ToString)
con.Open()
MsgBox("con open")
Using cmd As New SqlCommand("INSERT INTO STDMS_ClassDetails(Class_ID, Section, Class_Strength) VALUES(@d1, @d2, @d3)", con)
With cmd
MsgBox("Ready query and cmd")
.Parameters.AddWithValue("@d1", i)
MsgBox("added first col")
Select Case j
Case 1
MsgBox("case1")
.Parameters.AddWithValue("@d2", "A")
MsgBox("added1")
Exit Select
Case 2
MsgBox("case2")
.Parameters.AddWithValue("@d2", "B")
MsgBox("added2")
Exit Select
Case 3
MsgBox("case3")
.Parameters.AddWithValue("@d2", "C")
MsgBox("added3")
Exit Select
Case 4
MsgBox("case4")
.Parameters.AddWithValue("@d2", "D")
MsgBox("added4")
Exit Select
Case 5
MsgBox("case5")
.Parameters.AddWithValue("@d2", "E")
MsgBox("added5")
Exit Select
End Select
MsgBox("out of select")
.Parameters.AddWithValue("@d3", updownTotalStrength.Value)
MsgBox("added strength")
con.Close()
MsgBox("closed")
End With
End Using
MsgBox("end")
Next
Next
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End If
End If
End Sub
End Class
答案 0 :(得分:0)
只需在End Using
行
cmd.ExecuteNonQuery()
因为你建立了命令,但你没有执行它