Usuário com melhor resposta
Erro ao deletar do bd de acordo com o codigo do gridview

Pergunta
-
estou querendo faze o seguinte eu abri um form pra excluir cliente a aparece o gridview quando eu click em algum nome ou codigo ele pergunta se deseja deletar esse codigo de acordo com bd mais ta dando errado.
estou usando esse comando
OleDbCommand delete = new OleDbCommand("DELETE * FROM clientes WHERE codigo = '" + dataGridView1.Rows + "' ", conexao);
porem descobri q o dataGridView1.Rows é invalido para isso alguem pederia me ajudar?
Respostas
-
Olá
Pense comigo: voce precisa do VALOR da COLUNA correspondente ao código de UMA UNICA LINHA, certo?
Sendo assim, não há o menor sentido em se fazer grid.Rows, pois neste voce tem o CONJUNTO DE LINHAS do grid.
Resposta:
if (dataGridView1.SelectedRows.Count > 0)
dataGridView1.CurrentCell.OwningRow.Cells["Codigo"].Value .ToString()
onde:
- "Codigo" deve ser o nome da coluna desejada.
- usei o ToString() para converter o valor para string
----------------------------------------------------------------
Porém, deve-se alertar que instruções sql não devem ser montadas do jeito que está fazendo, concatenando com as variáveis). Isso é uma má prática. Assim seu código fica mais sujeito a erros e vulnerável a SQL Injection.
Dê uma pesquisada sobre isso. Aqui no fórum tem milhares de posts usando PARAMETROS nas consultas.
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado]- Marcado como Resposta _Rafael domingo, 15 de novembro de 2009 04:15
Todas as Respostas
-
Olá
Pense comigo: voce precisa do VALOR da COLUNA correspondente ao código de UMA UNICA LINHA, certo?
Sendo assim, não há o menor sentido em se fazer grid.Rows, pois neste voce tem o CONJUNTO DE LINHAS do grid.
Resposta:
if (dataGridView1.SelectedRows.Count > 0)
dataGridView1.CurrentCell.OwningRow.Cells["Codigo"].Value .ToString()
onde:
- "Codigo" deve ser o nome da coluna desejada.
- usei o ToString() para converter o valor para string
----------------------------------------------------------------
Porém, deve-se alertar que instruções sql não devem ser montadas do jeito que está fazendo, concatenando com as variáveis). Isso é uma má prática. Assim seu código fica mais sujeito a erros e vulnerável a SQL Injection.
Dê uma pesquisada sobre isso. Aqui no fórum tem milhares de posts usando PARAMETROS nas consultas.
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado]- Marcado como Resposta _Rafael domingo, 15 de novembro de 2009 04:15
-