EXCLUSAO DIRETO NO GRID
gente estou tetando excluir os dados do meu bd direto do grid mais nao esta rolando alguem pode me dar uma luz
obrigado
If cboSalva.Text = [Ô]Finalizado[Ô] Then
For Each r As DataGridViewRow In DGBAIXA.Rows
Try
Dim com As SqlConnection
[ô] Dim x As Boolean
[ô]conecta à base de dados
com = New SqlConnection()
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Contrato_Mae[Ô]
Dim command As New SqlCommand(SQL, com)
r.Cells([Ô]Contrato_Mae[Ô]).Value = command
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
MessageBox.Show([Ô]Importação e Atualização Efetuada com sucesso[Ô], [Ô]Importação[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
DGBAIXA.DataSource = Nothing
btnSalvar.Enabled = False
Exit Sub
End If
obrigado
If cboSalva.Text = [Ô]Finalizado[Ô] Then
For Each r As DataGridViewRow In DGBAIXA.Rows
Try
Dim com As SqlConnection
[ô] Dim x As Boolean
[ô]conecta à base de dados
com = New SqlConnection()
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Contrato_Mae[Ô]
Dim command As New SqlCommand(SQL, com)
r.Cells([Ô]Contrato_Mae[Ô]).Value = command
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
MessageBox.Show([Ô]Importação e Atualização Efetuada com sucesso[Ô], [Ô]Importação[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
DGBAIXA.DataSource = Nothing
btnSalvar.Enabled = False
Exit Sub
End If
Dim contratoMae as atring
Coloca assim no evento CellClick do grid
contratoMae = gv.CurrentRow.Cells([Ô]NomeDaColunaDesejada[Ô]).Value
sql=[Ô] DELETE from baixa WHERE contratoMae[Ô]
Depois da exclusao você chama novamente a rotina que preenche o grid
Coloca assim no evento CellClick do grid
contratoMae = gv.CurrentRow.Cells([Ô]NomeDaColunaDesejada[Ô]).Value
sql=[Ô] DELETE from baixa WHERE contratoMae[Ô]
Depois da exclusao você chama novamente a rotina que preenche o grid
nao esta rolando ainda deu o mesmo erro
Vamos alterar um pouco
Dim IdContratoMae as string
idContratoMae = gv.CurrentRow.Cells([Ô]NomeDaColunaDesejada[Ô]).Value
sql=[Ô] DELETE from baixa WHERE contratoMae = idContratoMae[Ô]
Dim IdContratoMae as string
idContratoMae = gv.CurrentRow.Cells([Ô]NomeDaColunaDesejada[Ô]).Value
sql=[Ô] DELETE from baixa WHERE contratoMae = idContratoMae[Ô]
no meu banco de dados esta assim o campo Contrato_Mae e no datagrid via data set tbm
e esta dando este erro
Uma expressao de tipo nao booleano especificada em um contexto no qual se espera uma condição, proximo a [ô]Contrato_Mae[ô]
e esta dando este erro
Uma expressao de tipo nao booleano especificada em um contexto no qual se espera uma condição, proximo a [ô]Contrato_Mae[ô]
consegui resolver obrigado codigo abaixo para quem passar por esse problema
For Each r As DataGridViewRow In DGBAIXA.Rows
Try
Dim com As SqlConnection
[ô] Dim x As Boolean
[ô]conecta à base de dados
com = New SqlConnection()
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Contrato_Mae =Contrato_Mae[Ô]
Dim command As New SqlCommand(SQL, com)
[ô]
contratoMae = DGBAIXA.CurrentRow.Cells([Ô]Contrato_Mae[Ô]).Value
[ô]SQL = [Ô]DELETE from baixa WHERE Contrato_Mae =Contrato_Mae[Ô]
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
MessageBox.Show([Ô]Importação e Atualização Efetuada com sucesso[Ô], [Ô]Importação[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
DGBAIXA.DataSource = Nothing
btnSalvar.Enabled = False
Exit Sub
End If
For Each r As DataGridViewRow In DGBAIXA.Rows
Try
Dim com As SqlConnection
[ô] Dim x As Boolean
[ô]conecta à base de dados
com = New SqlConnection()
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Contrato_Mae =Contrato_Mae[Ô]
Dim command As New SqlCommand(SQL, com)
[ô]
contratoMae = DGBAIXA.CurrentRow.Cells([Ô]Contrato_Mae[Ô]).Value
[ô]SQL = [Ô]DELETE from baixa WHERE Contrato_Mae =Contrato_Mae[Ô]
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
MessageBox.Show([Ô]Importação e Atualização Efetuada com sucesso[Ô], [Ô]Importação[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
DGBAIXA.DataSource = Nothing
btnSalvar.Enabled = False
Exit Sub
End If
gente tinha feito o exemplo que o amigo Adhel mostrou deu certo mais so que em partes, desta forma acima ele exclui todos os dados da tabela gostaira de fazer de acordo com dado preenchido no grid na cel cod, tentei assim mais ele exclui somente a segunda linha e gostaria de excluir todos os dados do grid, estou usando assim :
Dim contratoMae As Integer
For Each r As DataGridViewRow In DGBAIXAA.Rows
Try
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
contratoMae = DGBAIXAA.CurrentRow.Cells([Ô]Cod[Ô]).Value
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & contratoMae
Dim command As New SqlCommand(SQL, com)
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
Dim contratoMae As Integer
For Each r As DataGridViewRow In DGBAIXAA.Rows
Try
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
contratoMae = DGBAIXAA.CurrentRow.Cells([Ô]Cod[Ô]).Value
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & contratoMae
Dim command As New SqlCommand(SQL, com)
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Next
Coloca apenas isso no evento CellClick do DataGridView
contratoMae = DGBAIXAA.CurrentRow.Cells([Ô]Cod[Ô]).Value
e isso em algum botão
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & contratoMae
Dim command As New SqlCommand(SQL, com)
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Desse jeito excluirá apenas um por vez
contratoMae = DGBAIXAA.CurrentRow.Cells([Ô]Cod[Ô]).Value
e isso em algum botão
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
[ô]verifica a conecção.
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & contratoMae
Dim command As New SqlCommand(SQL, com)
com.Open()
command.ExecuteNonQuery()
com.Close()
com = Nothing
command = Nothing
Catch exe As Exception
MessageBox.Show([Ô]Erro ao Efetuar a Importação [Ô] & exe.Message)
End Try
Desse jeito excluirá apenas um por vez
mais a intenção é excluir todos os dados listados grid tanto 1 como 1000 por isso estava dentro de um for
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
com.Open()
For i = 0 to DGBAIXAA.Rows.Count -1
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & DGBAIXAA.Rows(i).Cells([Ô]NOME_DA_COLUNA[Ô]).Value & [Ô][ô]
Dim command As New SqlCommand(SQL, com)
command.ExecuteNonQuery()
Next
com.Close()
com = Nothing
command = Nothing
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
com.Open()
For i = 0 to DGBAIXAA.Rows.Count -1
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[Ô] & DGBAIXAA.Rows(i).Cells([Ô]NOME_DA_COLUNA[Ô]).Value & [Ô][ô]
Dim command As New SqlCommand(SQL, com)
command.ExecuteNonQuery()
Next
com.Close()
com = Nothing
command = Nothing
Veja agora
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
com.Open()
For i = 0 to DGBAIXAA.Rows.Count -1
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[ô][Ô] & DGBAIXAA.Rows(i).Cells([Ô]NOME_DA_COLUNA[Ô]).Value & [Ô][ô]
Dim command As New SqlCommand(SQL, com)
command.ExecuteNonQuery()
Next
com.Close()
com = Nothing
command = Nothing
Dim com As New SqlConnection
[ô]conecta à base de dados
com.ConnectionString = [Ô]server=10.50.66.146; uid=Admin; pwd=mesa123; database=CTR[Ô]
com.Open()
For i = 0 to DGBAIXAA.Rows.Count -1
Dim SQL As String = [Ô]DELETE from baixa WHERE Cod=[ô][Ô] & DGBAIXAA.Rows(i).Cells([Ô]NOME_DA_COLUNA[Ô]).Value & [Ô][ô]
Dim command As New SqlCommand(SQL, com)
command.ExecuteNonQuery()
Next
com.Close()
com = Nothing
command = Nothing
Tópico encerrado , respostas não são mais permitidas