Hasta este punto ya hemos creado la conexión con una cadena de conexión directa en la cual nosotros ponemos los datos de conexión a la base de de datos directamente, pero sabemos que la conexión del servidor, la base de datos, el usuario y la contraseña pueden estar cambiando, entonces mostraremos como tener una conexión dinámica basada en nuestras variables de configuración guardadas en el registro de Windows.
Nuestro código en el modulo crearModelo quedaría de la siguiente forma.
'IMPORTAMOS LAS LIBRERIAS NECESARIAS PARA LA CONEXIÓN A MYSQL/MARIADB
Imports MySqlConnector.MySqlConnection
'EMPIEZA EL MODULO
Module crearModelo
' CON PUBLIC SUB CREAMOS PROCEDIMIENTOS
Public Sub generaModelo()
' VARIABLES PARA LA CONEXIÓN
Dim strServidor As String
Dim strBaseDeDatos As String
Dim strUsuario As String
Dim strContra As String
'OBTENEMOS LOS DATOS DE CONFIGURACIÖN DEL REGISTRO DE WINDOWS PREVIAMENTE GUARDADAS
If Not My.Computer.Registry.GetValue("HKEY_CURRENT_USER\CREADORMVCPHP", "servidor", Nothing) Is Nothing Then
strServidor = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\CREADORMVCPHP", "servidor", Nothing).ToString()
strBaseDeDatos = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\CREADORMVCPHP", "baseDeDatos", Nothing).ToString()
strUsuario = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\CREADORMVCPHP", "usuario", Nothing).ToString()
strContra = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\CREADORMVCPHP", "contra", Nothing).ToString()
Else
MsgBox("No se han capturado la conexión a la base de datos")
Return
End If
' METEMOS LA CADENA DE CONEXIÓN EN UNA VARIABLE
Dim cadenaConexion = "Server=" & strServidor & ";User ID=" & strUsuario & ";Password=" & strContra & ";Database=" & strBaseDeDatos
' CREAMOS LA CONEXIÓN CON LA CADENA DE CONEXIÓN
Dim connection = New MySqlConnector.MySqlConnection(cadenaConexion)
Try
' SI SE ABRE LA CONEXIÓN MANDAMOS MENSAJE
connection.Open()
MsgBox("Conexion Correcta")
Catch ex As Exception
' SI NO SE ABRE LA CONEXIÓN MANDAMOS MENSAJE DE ERROR
MsgBox("ERROR " & ex.Message)
Exit Sub
End Try
End Sub
End Module


1 pingback