Transcript
Page 1: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

Crear conexion base de datos mysq.

1. Descargar e instalar el controlador odbc 3.51 o 5.1

2. Crear conexion, Ir a herramientas Administrativas y ejecutar origenes de datos ODBC

3. Click en agregar, selecciona el driver 3.51 o 5.1 segun sea el caso, agrgar el puerto de

conexion, en connect options (el puerto puede ser 3306 o segun el puerto utilizado por

apache)

4. En caso de tener problemas con la conexion, debera crear un usuario, en mysql para pueda

acceder a los datos desde cualquier direccion ip.

• Para crear un el usuario por codigo :

CREATE USER 'root'@'%' IDENTIFIED BY '1015476aqcpeke';

GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' IDENTIFIED BY '1015476aqcpeke' WITH GRANT

OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0

MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

• Creacion de Usuario desde phpmyadmin

-Acceder a http://localhost/phpmyadmin/ y dar clic en privilegios

-Click en agregar nuevo Usuario

Page 2: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

-Click en Continuar, de esta manera se aceptara la conexion, (Solo si hay problemas como en mi

caso)

5.- Ahora que ya podemos acceder desde cualquier direccion ip a nuetra base de datos,

accedamos desde visual basic 6.0, se crea un formulario con 5 texbox.

Page 3: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

6.- Programacion de acceso.

Private Sub Conectar_Click()

If Text1.Text = "" Or Text2.Text = "" Or Text3.Text = "" Or Text4.Text = "" Or Text5.Text = "" Then

MsgBox "Para poder conectarse al servidor, es necesario llenar todos los campos"

Else

On Error GoTo Ver

Set BD = New ADODB.Connection

BD.ConnectionString = "driver={MySQL ODBC 3.51 Driver};" & _

"Server=" & Text1 & ";" & _

"Port=" & Text2 & ";" & _

"Database=" & Text3 & ";" & _

"User=" & Text4 & ";" & _

"Password=" & Text5 & ";" & _

"Option=3;"

BD.Open

Proventas.Server1.Text = login.Text1.Text

Proventas.port1.Text = login.Text2.Text

Proventas.basedatos.Text = login.Text3.Text

Proventas.usuario1.Text = login.Text4.Text

Proventas.password7.Text = login.Text5.Text

frmSplash.Show

Unload Me

Exit Sub

Ver:

MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"

Err.clear

End If

End sub

- Para este caso se accede a la base de datos mediante la ip, es decir que esta aplicacion es funcional con

cualquier servidor, por si se requiere cambiar la aplicacion a otra pc, o cambair contraseña de la base de datos

no afectaria para nada la interfaz y no seria necesario recompilar la interfaz, solo seria necesario reconfigurar

el driver odbc.

Para acceder directo a la base de datos, sin que se tenga que escribir contraseñas, puerto, servidor etc.

Private Sub Form_Load()

Dim sql As String

sql = "select * from articulos"

With ADO

.ConnectionString = "Driver={MySQL ODBC 3.51

Driver};Server=182.181.180.182;Port=3306;Database=proventas;User=root; Password=xxxxx;Option=3;"

.RecordSource = sql

.Refresh

Set DataGrid1.DataSource = ADO

DataGrid1.Columns(0).Width = 0

End With

End sub

De esta manera no es necesario poner pasword, puerto etc..

Page 4: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

7.- Acceso a datos, con el siguiente codigo aceso a lso datos y los visualizo en el datagrid, para este caso utilizo

ADODC1, para este caso le puse como nombre ADO.

Private Sub Form_Load()

Dim sql As String

sql = "select * from articulos"

With ADO

.ConnectionString = "Driver={MySQL ODBC 3.51 Driver};" & _

"Server=" & Proventas.Server1.Text & ";" & _

"Port=" & Proventas.port1.Text & ";" & _

"Database=" & Proventas.basedatos.Text & ";" & _

"User=" & Proventas.usuario1.Text & ";" & _

"Password=" & Proventas.password7.Text & ";" & _

"Option=3;"

.RecordSource = sql

.Refresh

Set DataGrid1.DataSource = ADO

DataGrid1.Columns(0).Width = 0

End With

8.- Si se quisiera alamcenar datos en otro servidor, dentro de esta misma ventana, solo basta agregar un boton, y crear

la conexion mediante el odbc. Dentro del boton solo ponemos el siguente codigo..

Private Sub Adrian_Click()

Dim sql As String

sql = "select * from articulos"

With ADO

.ConnectionString = "Driver={MySQL ODBC 3.51

Driver};Server=182.181.180.109;Port=3306;Database=proventas;User=root; Password=xxxxxx;Option=3;"

.RecordSource = sql

.Refresh

Set DataGrid1.DataSource = ADO

DataGrid1.Columns(0).Width = 0

Page 5: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

End With

End Sub

En automatico nos conectaremos al servidor deseado y listo para almacenar datos, si en su caso quisieramos regresar a

nuertro servidor, colocamos el mismo codigo en otro boton, solo cambiamos nuestra direccion ip, contraseña, puerto,

pasword. De esta manera podemos utilizar el formulario para guardar registros en una base de datos alojada en nuestar

pc, como agregar registros a una base de datos alojada en un equipo diferente.

9.- ¿ Como guardar Registros?

Private Sub Guardar_Click()

If Me.Text1codigo.Text = "" Then

MsgBox "Los campos no deven estar vacios!!"

Me.Text1codigo.SetFocus

Exit Sub

End If

If Me.Text2Nombre.Text = "" Then

MsgBox "Los campos no deven estar vacios!!"

Me.Text2Nombre.SetFocus

Exit Sub

End If

If Me.Text3Descrip.Text = "" Then

MsgBox "Los campos no deven estar vacios!!"

Me.Text3Descrip.SetFocus

Exit Sub

End If

If Me.Text5Precio.Text = "" Then

MsgBox "Los campos no deven estar vacios!!"

Me.Text5Precio.SetFocus

Exit Sub

End If

With ADO

.CommandType = adCmdText

.Recordset.AddNew

.Recordset.Fields(0) = Me.Text1codigo.Text

.Recordset.Fields(1) = Me.Text2Nombre.Text

.Recordset.Fields(2) = Me.Text3Descrip.Text

.Recordset.Fields(3) = Me.Text4Fecha

.Recordset.Fields(4) = Me.Text5Precio.Text

.Recordset.Update

.Refresh

DataGrid1.Refresh

DataGrid1.Columns(0).Width = 0

MsgBox "Informacion Guardada!"

Call clear ‘ Esto es para limpira los texbox....

‘text1.codigo.text=””

‘Etc....

End With

End sub

Page 6: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

10.- A su vez Podemos consultar si la informacion fue agregada

Codigo para la busqueda...

Private Sub TextBuscar_Change()

Dim sql As String

sql = "Select * From articulos where codigo_articulos like '" & TextBuscar.Text & "%'"

With ADO

.RecordSource = sql

.Refresh

Set DataGrid1.DataSource = ADO

DataGrid1.Columns(0).Width = 0

End With

End Sub

Page 7: Conexion Mysql y Vb6

Conexion mysq y vb6

[email protected]

Como se podran dar cuenta tambiem podemos eliminar, modificar etc....


Top Related