Conexion mysql y usos

1,631 views

Published on

Coneccion MySql ara visual basic y algunas clases para leer, etc

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,631
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
75
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Conexion mysql y usos

  1. 1. Programación Científica: Visual.NetUnidad VLeer (Buscar) Modificar Eliminar AgregarPrivate Sub Leerlo_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Leer.Click Dim sql As New MySql Dim Dt As System.Data.DataTable Dt = sql.LEER("SELECT * FROM Tiposdoc") Dim A As String If Dt.Rows.Count = 0 Then MsgBox("Registro NO ENCONTRADO") Exit Sub Else LOS RESULTADOS QUEDAN EN DT Cada columna de la tabla se referncia en Dt.Rows(numero de fila).ItemArray(numero de columna).toString Ejemplo: Dt.Rows(0).ItemArray(0).ToString Seria la primer fila y columna encontrada En cambio si deseamos recorrer la tabla para cargar un combo For x = 0 To Dt.Rows.Count - 1 A = Dt.Rows(x).ItemArray(0).ToString Next x End If End Sub Private Sub modificar_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Modificar.Click Dim sql As New MySql Dim res As Integer = sql.INSERT_UPDATE_DELETE("UPDATE tiposdocSET descripcion = nada WHERE id= 1") If res = 0 Then MsgBox("No pude MODIFICAR EL REGISTRO") End If End Sub Private Sub eliminar_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Eliminar.Click Dim sql As New MySql Dim res As Integer = sql.INSERT_UPDATE_DELETE("DELETE FROMTiposdoc WHERE id = 1") If res = 0 Then MsgBox("No pude BORRAR EL REGISTRO") End If End Sub Private Sub agregar_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Agregar.Click Dim sql As New MySqlUnidad V
  2. 2. Programación Científica: Visual.NetUnidad V Dim res As Integer = sql.INSERT_UPDATE_DELETE("INSERT INTOtiposdoc (nombres columnas separados por ,) VALUES( " & valor paracolumna & ",valor,valor)") End Sub La Clase MySqlImports System.DataImports MySql.Data.MySqlClientPublic Class MySql Dim ConStr As String ="server=localhost;uid=root;password=gabriel1;database=General" instanciamos un objeto conexion y le pasamos de parametro la variable con la cadena Dim Con As New MySqlConnection(ConStr) Instrucción a ejecutar Public Function LEER(ByVal Str_Sql As String) As DataTable creamos el objeto comando y le pasamos el parámetro que contienela query y la conexion Dim Comando As New MySqlCommand(Str_Sql, Con) Try para capturar los errores Try antes de abrir conexión nos aseguramos que no existaconexión establecida previa If Not Con Is Nothing Then Con.Close() End If abrimos conexión Con.Open() declaramos la variable de tipo entero que contendrá lasfilas afectadas y ejecutamos el comando Dim Dt As New DataTable adaptador que sirve de enlace intermedio entre la aplicacióny la base de datos Dim Da As New MySqlDataAdapter(Str_Sql, Con) Dim res As Integer = Comando.ExecuteNonQuery() Dim Cmd As New MySqlCommandBuilder(Da) llenamos la tabla Da.Fill(Dt) Return Dt Dt.Clear() Catch ex As Exception Dim Dt As New DataTable Return Dt MsgBox(ex.Message) Finally cerramos la conexión Con.Close()Unidad V
  3. 3. Programación Científica: Visual.NetUnidad V y esto es muy importante, el objeto comando que habiamoscreado lo eliminamos de la memoria Comando = Nothing finalizamos la captura de errores End Try End Function Public Function INSERT_UPDATE_DELETE(ByVal Str_Sql As String) AsString NOTA: en res devolvemos el nº de filas afectadas si es correctoo cero si no pudimos insertar res debería consultarse luego de invocar la función forma de uso: dim res as integer =INSERT_UPDATE_DELETE("LA INSTRUCCION SQL") if res = 0 then MsgBox ("No pude ejecutar lainstrucción SQL") end if creamos el objeto comando y le pasamos el parámetro que contienela query y la conexion Dim Comando As New MySqlCommand(Str_Sql, Con) Try para capturar los errores Try antes de abrir conexión nos aseguramos que no existaconexión establecida previa If Not Con Is Nothing Then Con.Close() End If abrimos conexión Con.Open() adaptador que sirve de enlace intermedio entre la aplicacióny la base de datos Dim Da As New MySqlDataAdapter(Str_Sql, Con) Dim res As Integer = Comando.ExecuteNonQuery() Return res.ToString Catch ex As Exception MsgBox(ex.Message) Dim Res As Integer = 0 Return Res Finally cerramos la conexión Con.Close() y esto es muy importante, el objeto comando que habiamoscreado lo eliminamos de la memoria Comando = Nothing finalizamos la captura de errores End Try End Function Public Function BACKUP(ByVal archivo As String) As BooleanUnidad V
  4. 4. Programación Científica: Visual.NetUnidad V Dim Dt As System.Data.DataTable Dt = LEER("SELECT * FROM backup WHERE fecha = " & archivo & "") If Dt.Rows.Count = 0 Then Dim x As String Dim comando As String x =My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINESOFTWAREMySQL ABMYSQLServer 5.0", "Location", 0) comando = x & "binmysqldump --user=root --password=mysql--database base -r c:" & archivo & ".sql" Dim ProcId As Integer = Shell(comando, AppWinStyle.Hide,True) If ProcId >= 0 Then Dim res As Integer = INSERT_UPDATE_DELETE("INSERT INTObackup (fecha) VALUES (" & archivo & ")") If res = 0 Then MsgBox("No pude ejecutar el INSERT del backup") End If Else Return False Exit Function End If End If Return True End FunctionEnd ClassAgregar Referencia MysqlData.dll al proyectoUnidad V

×