conectar gambas con mysql
TRANSCRIPT
En primer lugar debe asegurarse de tener instalado Mysql en su pc. Personalmente recomiendo tambien la instalacion de PhpMyadmin que es un programa para administrar y crear bases de datos con Mysql. Si desea mas informacion de como instalar un servidor LAPM (Linux Apache Php Mysql), este link lo puede ayudar.
Ok instalado Mysql en su equipo, podemos crear nuestra base de datos bien sea por phpmyadmin o usando el gestor de base de datos que trae Gambas, el cual se accede en: Herramientas -> Gestor de base de Datos…
Al principio te pide una contraseña para encriptarla, esto para hacer mas segura tu BD. Luego puedes crear la BD y sus tablas de forma muy sencilla e intuitiva.
UN EJEMPLO.
Nada mejor que un ejemplo para ilustrar como se hace para conectar la BD creada y nuestro formulario.
Formulario: En este ejemplo, el formulario se encarga de agregar informacion sobre unos productos a nuestra BD. El aspecto es el siguiente:
Codigo: El codigo, un poco extenso, es el siguiente:
‘ Gambas class file‘estas son las variables de conexion a la base de datosPUBLIC cn AS NEW ConnectionPUBLIC rs AS Result‘variables booleanas para evaluacion de expresionesPUBLIC valor AS BooleanPUBLIC valor1 AS BooleanPUBLIC valor2 AS Boolean
PUBLIC SUB BtnCerrar_Click()
ME.Hide
END
PUBLIC SUB Form_Open()‘este evento permite crear la conexion a la base de datosWITH cn.type = “mysql”.host = “localhost”.login = “root”
.password = “102172″
.name = “cibercafe”
TRY .OPENIF ERROR THENMessage.Error(“Error abriendo la base de datos!!!\n” & Error.Text)ME.CloseELSE‘se selecciona los campos de la tabla que contiene la BDrs = cn.Exec(“SELECT * FROM productos”)rs.MoveFirstEND IFEND WITH
END
PRIVATE SUB Evaluacion()
IF IsNumber(texto2.Text) THENvalor = TRUEELSEMessage.Info(“el valor no es numerico\n” & “usted introdujo:\n” & texto2.Text)valor = FALSEEND IF
IF IsNumber(texto3.Text) THENvalor1 = TRUEELSEMessage.Info(“el valor no es numerico\n” & “usted introdujo:\n” & texto3.Text)valor1 = FALSEEND IF
IF IsNumber(texto4.Text) THENvalor2 = TRUEELSEMessage.Info(“el valor no es numerico\n” & “usted introdujo:\n” & texto4.Text)valor2 = FALSEEND IF
END
PUBLIC SUB BtnGuardar_Click()‘este es el evento que permite agregar los datos ingresados‘mediante el formulario a la base de datosDIM xresult AS ResultDIM xQuery AS StringDIM xParam AS IntegerEvaluacion()IF valor = FALSE OR valor1 = FALSE OR valor2 = FALSE THENClearField()
RETURNEND IF
xresult = cn.Create(“productos”)xresult!tipo = UCase(Combo1.Text)xresult!descripcion = Trim(UCase(texto1.Text))xresult!precio = Val(Trim(texto2.Text))xresult!stock = Val(Trim(texto3.Text))xresult!precio_final = Val(Trim(texto4.Text))xresult.UpdateMessage.Info(“Datos Guardados”)IF ERROR THEN Message.Error(Error.Text)
rs = cn.Exec(“SELECT * FROM usuarios”)rs.MoveFirstClearField()
END
PRIVATE SUB ClearField()
texto1.Text = “”texto2.Text = “”texto3.Text = “”texto4.Text = “”combo1.SetFocus
END
PUBLIC SUB BtnModificar_Click()
‘FrmOperadores.HideFrmModificaProducto.Show
END