2016-05-28 11 views
-1

enter image description herevb.netとmysqlの「未知の列(*」にi 'が作られた*コラムIDBで選択された行のfirstletter)where句

私が選択した行を削除しようとしているが、私はクリックしたときボタンを削除すると、警告が表示されます

'where句では未知の列' c 'です。

実際にその行が、where句に '未知カラム(「i」はしたカラムIDBに選択された行のfirstletter)を選択された各列だけでなく。ここ

enter image description here

私のコードです。パブリッククラス

Public Class DAFTAR_BUKU 
    Dim Koneksi As New MySqlConnection 
    Dim da As MySqlDataAdapter 
    Dim ds As New DataSet 
    Dim dt As New DataTable 
    Dim command As MySqlCommand 
    Dim id_cell As Char 
    Dim i As Integer 
    Dim query As String 

ため

機能のためのボタンの

Private Sub delete(kdbk As Char) 

     Dim query As String = "delete from daftarbuku where idb= " & kdbk 
     command = New MySqlCommand(query, Koneksi) 

     Try 
      Koneksi.Open() 
      da.DeleteCommand = Koneksi.CreateCommand() 
      da.DeleteCommand.CommandText = query 

      If MessageBox.Show("sure", "delete", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) = Windows.Forms.DialogResult.OK Then 

       If command.ExecuteNonQuery() > 0 Then 
        MsgBox("DELETED") 
        cleartext() 
       End If 
      End If 
      Koneksi.Close() 
      DataGridView1.Rows.RemoveAt(i) 
     Catch ex As Exception 

      MsgBox(ex.Message) 

     End Try 

    End Sub 

を削除して、Cに基づいて

Private Sub del_Click(sender As Object, e As EventArgs) Handles del.Click 
     delete(id_cell) 
     GRID() 
End Sub 
+0

catch例外では、mysqlexceptionとしてexを置くことができますか?次にMsgBox(ex.tostring)。もう一度デバッグすれば、エラーの理解を深めることができます – Student

答えて

0

を削除私は、列idbが整数であると仮定しています。したがって、charを受け入れる関数に整数を渡しています。

charを整数に変更することも、id_cellid_cell.tostringに変更することもできます。

また、mysqlを使用しているのでキャッチ例外では、ex as MySqlExceptionとMessageBoxのMsgBox(ex.toString)を使用してください。

次回の詳細な例外エラーからわかります。

関連する問題