Sempre que possível usa parameters para indicares um valor.
Vê alguns exemplos aqui: VB.NET: Gestão de Dados em SQL Server - Parte I
Vê alguns exemplos aqui: VB.NET: Gestão de Dados em SQL Server - Parte I
Eu tou farto de workar na query da BD em SQL e lá funciona
Código:delete from dispositivos where ID_disp='"DISP=01"'
1-Para quê adivinhar os códigos das enums se podes fazer isto:Código:Dim respostas As String respostas = MsgBox("Deseja Eliminar os dados?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + 256) If respostas = 6 Then End If
Dim respostas As DialogResult
respostas = MsgBox("Deseja Eliminar os dados?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + 256)
If respostas = Windows.Forms.DialogResult.Yes Then
End If
Mas o que raio estás a tentar fazer aqui?
O teu valor de identidade é "DISP=01" ?
Sabes que tudo o que ponhas entre ' ' não sofre parsing, não sabes?
Para quê a igualdade e/ou as aspas?
DELETE FROM [dispositivo]
WHERE ID_disp='DISP01'
Try
Dim TempID As Integer
Dim respostas As DialogResult
respostas = MsgBox("Deseja Eliminar os dados?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + 256)
If respostas = DialogResult.Yes Then
DataGridView2.Rows.RemoveAt(DataGridView2.SelectedRows(0).Index)
TempID = DataGridView2.SelectedRows(0).Cells("ID_disp").Value
Dim cmSQL As New SqlCommand("DELETE FROM dispositivo WHERE ID_disp=@ID_dip", cnSQL)
cmSQL.ExecuteNonQuery()
cmSQL.Dispose()
MsgBox("Dados alterados com sucesso.", MsgBoxStyle.Information)
End If
Catch
End Try
Código:TempID = DataGridView2.SelectedRows(0).Cells("ID_disp").Value Dim cmSQL As New SqlCommand("DELETE FROM dispositivo WHERE ID_disp=@ID_dip", cnSQL)
Dim cmSQL As New SqlCommand("DELETE FROM dispositivo WHERE ID_disp='" & TempID & "'", cnSQL)
Código:Try Dim TempID As Integer Dim respostas As DialogResult respostas = MsgBox("Deseja Eliminar os dados?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + 256) If respostas = DialogResult.Yes Then DataGridView2.Rows.RemoveAt(DataGridView2.SelectedRows(0).Index) TempID = DataGridView2.SelectedRows(0).Cells("ID_disp").Value Dim cmSQL As New SqlCommand("DELETE FROM dispositivo WHERE ID_disp=@ID_dip", cnSQL) cmSQL.ExecuteNonQuery() cmSQL.Dispose() MsgBox("Dados alterados com sucesso.", MsgBoxStyle.Information) End If Catch End Try
Agradeco mais uma vez a todos mas esta P.... não ta a der :S vou tentar ver se consigo encontrar alguma solução
DataGridView2.Rows.RemoveAt(DataGridView2.SelectedRows(0).Index)
TempID = DataGridView2.SelectedRows(0).Cells("ID_disp").Value
Dim cmSQL As New SqlCommand("DELETE FROM dispositivo WHERE ID_disp=@ID_dip", cnSQL)
Bacano rapaz, conheco pessoas que também começaram assim e são muito bons programadores.
Por isso mesmo te digo que deves de fazer exercicios de logica, garanto-te que ajuda muito.. falo por experiencia própria.