将combox值放入datagridview [英] putting combox values into datagridview

查看:66
本文介绍了将combox值放入datagridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将我的combox中的值放入datagridbiew,但是它给出了Exception my coe给出如下:

I am trying to put values from my comboxes into datagridbiew but it is giving Exception my coe is given below:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Dim conn As New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=grade;Integrated Security=True;Pooling=False")
       Dim cmd As SqlCommand

       If ComboClass.SelectedItem <> "" Or ComboDiv.SelectedItem <> "" Or ComboSubject.SelectedItem <> "" Or ComboTeacher.SelectedItem = "" Or ComboYrstart.SelectedItem <> "" Or ComboYrEnd.SelectedItem <> "" Then


           Try
               conn.Open()
               Dim query As String = "insert into TeacherSubject(Teacher,Class,Div,Subject,YearStart,YearEnd)values(@Teacher,@Class,@Div,@Subject,@YearStart,@YearEnd)"
               cmd = New SqlCommand(query, conn)
               cmd.Parameters.AddWithValue("@Teacher", (ComboTeacher.SelectedItem()))
               cmd.Parameters.AddWithValue("@Class", (ComboClass.SelectedItem()))
               cmd.Parameters.AddWithValue("@Div", (ComboDiv.SelectedItem()))
               cmd.Parameters.AddWithValue("@Subject", (ComboSubject.SelectedItem()))
               cmd.Parameters.AddWithValue("@YearStart", (ComboYrstart.SelectedItem()))
               cmd.Parameters.AddWithValue("@YearEnd", (ComboYrEnd.SelectedItem()))

               Dim NoOfRowsAffected As Integer = cmd.ExecuteNonQuery() //Exception
               MessageBox.Show("Teacher-Subject Details Inserted")
               LoadDataInDataGrid()
               ComboTeacher.SelectedItem = ""
               ComboClass.SelectedItem = ""
               ComboDiv.SelectedItem = ""
               ComboSubject.SelectedItem = ""
               ComboYrstart.SelectedItem = ""
               ComboYrEnd.SelectedItem = ""


           Catch ex As Exception
               MessageBox.Show(ex.ToString())

           Finally
               If conn.State = ConnectionState.Open Then
                   conn.Close()

               End If
           End Try
       Else
           MessageBox.Show("Please fill proper details")

       End If
   End Sub





添加例外来自答案的OP的信息

ok.t​​这是我的例外现在我该如何处理它?<​​br />
System.Data.SqlClient.SqlException was抓住了





adding the exception info of the OP from an "answer"
ok.this is my Exception now how do i handle it ?
System.Data.SqlClient.SqlException was caught

 Message=Implicit conversion from data type nvarchar to varbinary is not allowed. Use the CONVERT function to run this query.
  
Number=257
  Procedure=""
  Server=.\SQLEXPRESS
  Source=.Net SqlClient Data Provider
  State=3
  StackTrace:
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
       at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       at grading_system.frmTeaches.Button1_Click(Object sender, EventArgs e) in C:\Users\Pratik\Desktop\project\form-2\grading system\grading system\frmTeaches.vb:line 196
  InnerException:

推荐答案

全部您需要做的是将代码更改为以下内容



All you need to do is to change your code to the following

cmd.Parameters.AddWithValue("@Teacher", (ComboTeacher.SelectedItem.Text))
cmd.Parameters.AddWithValue("@Class", (ComboClass.SelectedItem.Text))
cmd.Parameters.AddWithValue("@Div", (ComboDiv.SelectedItem.Text)
cmd.Parameters.AddWithValue("@Subject", (ComboSubject.SelectedItem.Text))
cmd.Parameters.AddWithValue("@YearStart", (ComboYrstart.SelectedItem.Text))
cmd.Parameters.AddWithValue("@YearEnd", (ComboYrEnd.SelectedItem.Text))





请在您的代码中进行上述建议的更改,并告诉我它是否正在工作或仍在获取其他任何例外。



此致,



ErSehmi



Please make the above suggested changes in your code, and let me know if it is working or still getting any other exception.

Regards,

ErSehmi


请分享代码或正确解释。我没有得到你想要的东西!
Please share the code or explain properly. I am not getting what you are trying to ask!


这篇关于将combox值放入datagridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆