En algunos proyectos que he realizado he utilizado esta clase para conectar MYSQL con VB .NET, la verdad es que no me ha causado conflicto y solo la he tenido que modificar para algunos fines específicos pero contiene lo básico para hacer las operaciones principales como guardar consultar y borrar algún dato.
Imports System.Data
Imports System.Data.SqlClient
Imports MySql.Data.MySqlClient
Public Class Consulta
#Region "Variables"
Dim cnnMYSQL As New MySqlConnection
Dim cnnSQL As New SqlConnection
Dim cmd As SqlCommand
Dim cmnd As MySqlCommand
Dim dt, dtr As New DataTable()
#End Region
#Region "ConnectionString"
Public Sub connectingSQL()
Try
cnnSQL.ConnectionString = "Data Source=server;Initial Catalog=catalog;Integrated Security=SSPI;"
cnnSQL.Open()
Catch ex As SqlException
End Try
End Sub
Public Sub connectingMYSQL()
Try
cnnMYSQL = New MySqlConnection()
cnnMYSQL.ConnectionString = "Data Source = server;Database=db;User ID=root; Password = pass; Allow Zero Datetime=True; CHARSET=latin1"
cnnMYSQL.Open() ' abre la conexion con la bd
Catch ex As MySqlException
End Try
End Sub
#End Region
Public Sub consulta_non_query(ByVal consulta As String)
'Este metodo recibe como parametro la consulta completa y sirve para hacer INSERT, UPDATE Y DELETE
conexion.ConnectionString = str_conexion
cmd = New SqlCommand(consulta, conexion)
conexion.Open()
Try
cmd.ExecuteNonQuery()
MsgBox("La operacion se realizo con exito!", MsgBoxStyle.Information, "Operacion exitosa!" )
Catch ex As Exception
MsgBox("Error al operar con la base de datos!", MsgBoxStyle.Critical, "Error!" )
End Try
conexion.Close()
End Sub
Public Function consulta_reader(ByVal consulta As String) As DataTable
'Este metodo recibe como parametro la consulta completa y sirve para hacer SELECT
Dim dt As New DataTable
conexion.ConnectionString = str_conexion
cmd = New SqlCommand(consulta, conexion)
conexion.Open()
Try
dt.Load(cmd.ExecuteReader())
Catch ex As Exception
MsgBox("Error al operar con la base de datos!", MsgBoxStyle.Critical, "Error!" )
End Try
conexion.Close()
Return dt
End Function
Public Sub cargar_lista(ByRef lista As ListBox, ByVal consulta As String, ByVal valueMember As String, ByVal displayMember As String)
Dim dt As New Data.DataTable
conexion.ConnectionString = str_conexion
cmd = New SqlCommand(consulta, conexion)
conexion.Open()
Try
dt.Load(cmd.ExecuteReader())
lista.DataSource = dt
lista.ValueMember = valueMember
lista.DisplayMember = displayMember
Catch ex As Exception
MsgBox("Error al operar con la base de datos!", MsgBoxStyle.Critical, "Error!" )
End Try
conexion.Close()
End Sub
Public Sub cargar_combo(ByRef combo As ComboBox, ByVal consulta As String, ByVal valueMember As String, ByVal displayMember As String)
Dim dt As New DataTable
conexion.ConnectionString = str_conexion
cmd = New SqlCommand(consulta, conexion)
conexion.Open()
Try
dt.Load(cmd.ExecuteReader())
combo.DataSource = dt
combo.ValueMember = valueMember
combo.DisplayMember = displayMember
Catch ex As Exception
MsgBox("Error al operar con la base de datos!", MsgBoxStyle.Critical, "Error!" )
End Try
conexion.Close()
End Sub
Public Function ObtenerDatos(ByVal consulta As String)
Dim valorRetorno As Integer
Try
'connectingMY()
Dim cmd As New SqlCommand
cmd.CommandType = CommandType.Text
cmd.Connection = cnnSQL
cmd.CommandText = consulta
valorRetorno = cmd.ExecuteScalar()
Catch ex As Exception
' MsgBox("Error en BD")
End Try
Return valorRetorno
End Function
Public Function verificar_existencia(ByVal consulta As String) As Boolean
'Devuelve true si existe, entonces no grabamos, o devuelve false si no existe entoinces debemos grabar.
Dim dt As New DataTable
conexion.ConnectionString = str_conexion
cmd = New SqlCommand(consulta, conexion)
conexion.Open()
Try
dt.Load(cmd.ExecuteReader())
Catch ex As Exception
MsgBox("Error al operar con la base de datos!", MsgBoxStyle.Critical, "Error!" )
End Try
conexion.Close()
If dt.Rows.Count > 0 Then
Return True
Else
Return False
End If
End Function
End Class

1 comentarios:
muy bueno
Publicar un comentario