我无法将数据插入SQL Server数据库

时间:2016-11-03 20:49:24

标签: sql sql-server vb.net

将数据插入SQL Server数据库时遇到问题。我正在研究学校管理系统。我有2个用户(管理员和员工)。管理员创建/设置工作人员的所有基本需求。

这里,admin正在添加课程详细信息。因此,第一步是在STDMS_ClassDetails数据库中添加一个类,部分和强度。之后,科目字段将被更新。

现在,添加新类的流程如下:

  1. 在create class选项卡下,Admin设置类的范围。例如:1级到10级。

  2. 然后管理员选择如何添加部分,类的强度。

    2.I。如果他选择1by1选项,那么他需要选择每个类,部分和&阶级的力量。

    物2.ii。如果他选择了组选项,则所有上述类将同时具有相同的部分和强度。

  3. 这是我的数据库。

    Database

    &安培;这是我的前端。

    Front End

    没有错误消息,但数据库没有更新。所以,我必须在这段代码中遗漏一些东西。请帮我纠正并使这段代码有效。

    我的代码如下所示:

    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
    

1 个答案:

答案 0 :(得分:0)

只需在End Using

之前添加以下命令即可
 cmd.ExecuteNonQuery()

因为你建立了命令,但你没有执行它