30/11/2012, 12:52
|
| | Fecha de Ingreso: noviembre-2012 Ubicación: caracas
Mensajes: 53
Antigüedad: 12 años Puntos: 0 | |
Respuesta: Enumerar reistros desde un datagridview en vb.net 2010 a mysql El archivo de excel lo leo con un select como bien tu me decias antes... aqui te coloco el codigo completo para que lo veas... lo q necesito es una especie de contador para que se me guarden la cantidad de registros que se almacenen
Imports System.Data.OleDb 'Importacion necesaria para trabajar con ficheros excel
Public Class frmInclusionantigua
'EVENTO CLICK DEL BOTON XLSX
Private Sub btnXLS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnXLSX.Click
'Instanciamos nuestro cuadro de dialogo
Dim openFileDialog1 As New OpenFileDialog
'Directorio Predeterminado
openFileDialog1.InitialDirectory = "C:\"
'Filtramos solo archivos con extension *.xlsx
openFileDialog1.Filter = "Archivos de Microsoft Office Excel (*.xlsx)|*.xlsx"
'Si se presiona abrir entonces...
If openFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
'Asignamos la ruta donde se almacena el fichero excel que se va a importar
txtRutaXLS.Text = openFileDialog1.FileName
'Instanciamos nuestra cadena de conexion especial para excel,indicando la ruta del fichero
Dim cadconex As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Me.txtRutaXLS.Text.Trim & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"""
Dim cn As New OleDb.OleDbConnection(cadconex)
Dim cmd As New OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim dt As New DataTable
cmd.Connection = cn
'Consultamos la hoja llamada GENERAL$ de nuestro archivo *.xlsx
cmd.CommandText = "select * from [GENERAL$]"
cmd.CommandType = CommandType.Text
da.SelectCommand = cmd
'Llenamos el datatable
da.Fill(dt)
'Llenamos el Datagridview
dgvImportacion.DataSource = dt
'Ajustamos las columnas del DataGridView
dgvImportacion.AutoSizeColumnsMode = 6
End If
End Sub
Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click
Me.Visible = False
Me.Dispose()
frmMenu.Show()
End Sub
Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click
Dim cn As New MySqlConnection(frmConexion.ConexionMySQL)
cn.Open()
Try
Dim sqli As String = "INSERT INTO operaciones (campo1,campo2,campo3)" & _
"VALUES (@campo1,@campo2,@campo3)"
'Recorremos el Datagridview
For Each fila As DataGridViewRow In dgvImportacion.Rows
'Dependiendo del Datagrid se colocan las filas
Dim cmd As New MySqlCommand(sqli, cn)
cmd.Parameters.AddWithValue("@campo1", fila.Cells(1).Value)
cmd.Parameters.AddWithValue("@campo2", fila.Cells(2).Value)
cmd.Parameters.AddWithValue("@campo3", fila.Cells(3).Value)
'Ejecutar instruccion sql Insert
cmd.ExecuteNonQuery()
Next
MessageBox.Show("Registros Ingresados con Exito...")
Catch ex As Exception
'Anunciamos el error si lo hay
MsgBox(ex.Message.ToString)
MsgBox("no se pudo cargar a la base de datos")
End Try
End Sub
End Class |