MySQL ? con .NET ?
¿Para qué voy a saber cómo conectar MySQL con .NET si éste está diseñado
para trabajar mejor con SQL Server?
Bueno pueden googlear las ventajas y desventajas de usar un motor de bases
de datos u otro. Pero en el momento en que le digas al cliente el costo extra
por el motor de BD (En caso que no lo tuviera) creeme que apoyará el software
libre y te dirá algo como: "Mi base de datos no es muy grande, usa el
pequeño MySQL".
Bueno en todo caso, les voy a dejar la clase que uso para establecer la conexión….
Ah pero antes necesitan instalar las librerías del mysql para .NET en:
Ahora sí, les dejaré mi clase (la cual no es exactamente oh que prodigio!,
pero sirve):
Imports MySql.Data.MySqlClient
Imports Model
Public Class Conexion
Public coneccion As MySql.Data.MySqlClient.MySqlConnection
Public comando As MySql.Data.MySqlClient.MySqlCommand
Public data As System.Data.DataSet
Public adaptador As MySql.Data.MySqlClient.MySqlDataAdapter
Public conectado As Boolean = False
Public Sub New()
coneccion = New MySql.Data.MySqlClient.MySqlConnection
adaptador = New MySql.Data.MySqlClient.MySqlDataAdapter
comando = New MySql.Data.MySqlClient.MySqlCommand
data = New System.Data.DataSet
adaptador.DeleteCommand = Nothing
adaptador.InsertCommand = Nothing
adaptador.SelectCommand = Nothing
adaptador.UpdateCommand = Nothing
comando.Connection = Nothing
comando.Transaction = Nothing
data.DataSetName = "El Dataset"
Try
coneccion.ConnectionString = "server=localhost;user=root;database=salesforge;port=3306;password=1234;"
coneccion.Open()
comando.Connection = coneccion
conectado = True
Catch ex As Exception
MsgBox("No se puede conectar a la base de datos : " + ex.Message)
conectado = False
End Try
End Sub
Public Function consulta(ByVal q As String) as DataSet
Try
data.Tables.Clear()
data.Clear()
comando.CommandText = q
adaptador.SelectCommand = comando
adaptador.Fill(data)
Catch ex As Exception
MsgBox("Error en consulta: " + q)
End Try
return data
End Sub
Function ejecuta(ByVal q As String) As Boolean
Try
comando.CommandText = q
Return comando.ExecuteNonQuery()
Catch ex As Exception
MsgBox("Error al ejecutar: " + q + "," + ex.Message)
Return False
End Try
End Function
End Class