INSERIR DADOS DE UM DATAGRID EM UM TABELA SQL
Tenho um datagrid com alguns registros, como eu faço para pegar esses registros e jogar eles numa tabela do meu sql.
Pode ser de forma manual. Um Loop que pega os campos e vai inserindo no arquivo.
Dim Cont As Integer = 0
For cont = 1 To Grw.RowCount - 1
[ô] Pega dados do grid GRW
Nome= Grw.Item(0, Cont).Value
Endereco = Grw.Item(1, Cont).Value
[ô] Coloque aqui o comando Insert do SQL
Next Cont
Dim Cont As Integer = 0
For cont = 1 To Grw.RowCount - 1
[ô] Pega dados do grid GRW
Nome= Grw.Item(0, Cont).Value
Endereco = Grw.Item(1, Cont).Value
[ô] Coloque aqui o comando Insert do SQL
Next Cont
Fica com erro onde esta nome, endereço. depois que fiz a alteração
Fiz da seguinte forma:
Dim Cont As Integer = 0
For Cont = 1 To GridEstacionamentoLavaJato.RowCount - 1
[ô] Pega dados do grid GRW
NumeroPlaca = GridEstacionamentoLavaJato.Item(0, Cont).Value
CdSetor = GridEstacionamentoLavaJato.Item(1, Cont).Value
[ô]SE O TXTDESCRICAO NAO FOR IGUAL A [Ô]CAIXA ABERTO[Ô] O SISTEMA FAZ UM INSERT NA TABELA CAIXA
Dim cn As New SqlConnection([Ô]Data Source=[Ô] & FrmLogin.TxtNomeServidorSQL.Text & [Ô];Initial Catalog= PARKINGCARS;user id=[Ô] & FrmLogin.TxtNomeUsuarioSQL.Text & [Ô];password=[Ô] & FrmLogin.txtsqlsenha.Text & [Ô][Ô])
cn.Open()
Dim cmd As New SqlCommand([Ô]INSERT INTO Movimento (NumeroPlaca, CDsetor, NomeSetor, CDvaga, NomeVaga, CDmodelos, NomeModelo, CDcor, NomeCor, CDConvenio, Convenio, HoraEntrada, DataEntrada, HoraSaida, DataSaida, Permanencia, CDpreco, Descricao, ValorTotal) VALUES ([ô][Ô] & txtdatasaida.Text & [Ô][ô],[ô][Ô] & txthorasaida.Text & [Ô][ô],[ô][Ô] & txtvalorsaida.Text & [Ô][ô])[Ô], cn)
cmd.ExecuteNonQuery()
cn.Close()
Next Cont
Fiz da seguinte forma:
Dim Cont As Integer = 0
For Cont = 1 To GridEstacionamentoLavaJato.RowCount - 1
[ô] Pega dados do grid GRW
NumeroPlaca = GridEstacionamentoLavaJato.Item(0, Cont).Value
CdSetor = GridEstacionamentoLavaJato.Item(1, Cont).Value
[ô]SE O TXTDESCRICAO NAO FOR IGUAL A [Ô]CAIXA ABERTO[Ô] O SISTEMA FAZ UM INSERT NA TABELA CAIXA
Dim cn As New SqlConnection([Ô]Data Source=[Ô] & FrmLogin.TxtNomeServidorSQL.Text & [Ô];Initial Catalog= PARKINGCARS;user id=[Ô] & FrmLogin.TxtNomeUsuarioSQL.Text & [Ô];password=[Ô] & FrmLogin.txtsqlsenha.Text & [Ô][Ô])
cn.Open()
Dim cmd As New SqlCommand([Ô]INSERT INTO Movimento (NumeroPlaca, CDsetor, NomeSetor, CDvaga, NomeVaga, CDmodelos, NomeModelo, CDcor, NomeCor, CDConvenio, Convenio, HoraEntrada, DataEntrada, HoraSaida, DataSaida, Permanencia, CDpreco, Descricao, ValorTotal) VALUES ([ô][Ô] & txtdatasaida.Text & [Ô][ô],[ô][Ô] & txthorasaida.Text & [Ô][ô],[ô][Ô] & txtvalorsaida.Text & [Ô][ô])[Ô], cn)
cmd.ExecuteNonQuery()
cn.Close()
Next Cont
Esse código percorre os dados de um datagridview com 3 colunas e joga os dados no banco de dados. Adapte-o conforme o que precisa:
Using con As OleDbConnection = GetConnection()
Try
Dim sql As String = [Ô]INSERT INTO Cond_Pagamentos (Documento, Data, Valor) VALUES (@Documento, @Data, @Valor)[Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, con)
con.Open()
For i As Integer = 0 To DataGridView1.Rows.Count - 1
cmd.Parameters.Clear()
cmd.Parameters.Add([Ô]@Documento[Ô], OleDbType.VarChar).Value = DataGridView1.Rows.Item(i).Cells(0).Value.ToString
cmd.Parameters.Add([Ô]@Data[Ô], OleDbType.VarChar).Value = DataGridView1.Rows.Item(i).Cells(1).Value.ToString
cmd.Parameters.Add([Ô]@Valor[Ô], OleDbType.VarChar).Value = DataGridView1.Rows.Item(i).Cells(2).Value.ToString
cmd.ExecuteNonQuery()
Next i
MsgBox([Ô]Grid Salvo.[Ô], MsgBoxStyle.Information)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Using
Sim o NOME e ENDERECO era so um exemplo para receber o conteudo do grid.
Tópico encerrado , respostas não são mais permitidas