定义了两个数组sh(10)和name(10),我想要在按下button1时,将这两个数组中的值成批插入sql数据库中,当尝试下面操作时,会提示“被准备语句"insert into student(s_h,s_name) values(@s..."需要参数(@s_h),但未提供该参数”,不知如何解决,或者有没有更好的办法将这些数组插入数据库中,请各位高手们指点:Private Sub Button1_ServerClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ServerClick        For j = 1 To 10
            Dim savecmd As SqlCommand = New SqlCommand("insert into student(s_h,s_name) values(@s_h,@s_name)", connection)            savecmd.Parameters.Add(New SqlParameter("@s_h", SqlDbType.VarChar))
            savecmd.Parameters("@s_h").Value = sh(j)            savecmd.Parameters.Add(New SqlParameter("@s_name", SqlDbType.VarChar))
            savecmd.Parameters("@s_name").Value = name(j)            cn.Open()
            savecmd.ExecuteNonQuery()
            cn.Close()
        Next    End Sub

解决方案 »

  1.   

    Dim savecmd As SqlCommand = New SqlCommand("insert into student(s_h,s_name) values(@s_h,@s_name)", connection)
                savecmd.Parameters.Add(New SqlParameter("@s_h", SqlDbType.VarChar))
                savecmd.Parameters.Add(New SqlParameter("@s_name", SqlDbType.VarChar))
                cn.Open()
    For j = 1 To 10
                
                savecmd.Parameters("@s_h").Value = sh(j)            savecmd.Parameters("@s_name").Value = name(j)
                savecmd.ExecuteNonQuery()        Next
                cn.Close()
      

  2.   

    Private Sub Button1_ServerClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ServerClick        For j = 1 To 10
                Dim savecmd As SqlCommand = New SqlCommand("insert into student(s_h,s_name) values(@s_h,@s_name)", connection)            savecmd.Parameters.Add(New SqlParameter("@s_h", SqlDbType.VarChar))
                savecmd.Parameters("@s_h").Value = sh(j)            savecmd.Parameters.Add(New SqlParameter("@s_name", SqlDbType.VarChar))
                savecmd.Parameters("@s_name").Value = name(j)            cn.Open()
                savecmd.ExecuteNonQuery()
                cn.Close()
            Next    End Sub
    应该是可以的。