0

當我插入一個空它顯示在我的代碼錯誤。我可以試着抓住它嗎?我不知道如何。try和catch在MysqlCmd.ExecuteNonQuery

Call Connects() 
MySqlCmd = New MySqlCommand 
MySqlCmd.Connection = Myconnect 
MySqlCmd.CommandText = "Select ID,ItemName,Quantity,ItemDesc,SuppInfo,datee from item " 
MyDA = New MySqlDataAdapter 
myDataTable = New DataTable 
MyDA.SelectCommand = MySqlCmd 
MyDA.Fill(myDataTable) 
MySqlCmd = New MySqlCommand 
MySqlCmd.Connection = Myconnect 
MySqlCmd.CommandText = "INSERT INTO item(ID,ItemName,Quantity,ItemDesc,SuppInfo,Po_Number,datee) VALUES('" & TextBox7.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text & "',CURRENT_TIMESTAMP)" 
MySqlCmd.ExecuteNonQuery() 
MsgBox("New working", MsgBoxStyle.Information) 

有什麼我可以做的嗎?

這裏是一個屏幕快照,顯示了錯誤:

回答

0

檢查TextBox3.Text的價值,如果它不能被解析爲int,如果你想插入NULL指定它以0代替它確切地說,不是空串。

0
If Label30.Text = 1 Then 
      Try 
       If TextBox7.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text = "" Or TextBox5.Text = "" Or TextBox6.Text = "" Then 
        MessageBox.Show("ERROR!") 
       ElseIf TextBox7.TextLength > 0 And TextBox2.TextLength > 0 And TextBox3.TextLength > 0 And TextBox4.TextLength > 0 And TextBox5.TextLength > 0 And TextBox6.TextLength > 0 Then 
        Call Connects() 
        MySqlCmd = New MySqlCommand 
        MySqlCmd.Connection = Myconnect 
        MySqlCmd.CommandText = "Select ID,ItemName,Quantity,ItemDesc,SuppInfo,datee from item " 
        MyDA = New MySqlDataAdapter 
        myDataTable = New DataTable 
        MyDA.SelectCommand = MySqlCmd 
        MyDA.Fill(myDataTable) 

它的工作現在謝謝:)這是我如何解決我自己的問題。