Conectandonos a una base de datos
Antes que nada es necesario activar el componente de Bases de datos (gb.db) en la pestaña componentes de la ventana propiedades en el menú Proyecto, luego podemos usar un código como este:
PUBLIC HConn AS Connection
PUBLIC SUB Main()
HConn = NEW Connection
HConn.Type = "mysql"
HConn.Host = "localhost"
HConn.Login = "root"
HConn.Password = ""
HConn.Name = "basedatos"
HConn.Open
END
En la primera línea declaramos una variable de tipo Connection yo la hice pública que pueda ser usada en otros módulos del proyecto en dado caso
En el procedimiento Main creamos primero el objeto y luego colocaremos algunos datos necesarios para iniciar la conexión, cabe destacar que estos datos son los unicos que deben modificarse, por ejemplo, el codigo anterior funcionará tanto para mysql, si quieres conectarte usando SQLite solo tendrías que colocar la ruta de la base de datos en la propiedad Host e ignorar las propiedades Login y Password, para conectar con ODBC es relativamente mas complicado, aquí les dejo Un Link con un tutorial al respecto.
Crear una base de datos
En el ejemplo anterior tenemos la siguiente linea de código:
HConn.Name = "basedatos"
La propiedad Name indica el nombre de la base de datos a la que nos queremos conectar, pero es posible que esa base de datos aún no exista, en ese caso nos daria el siguiente error:
Cannot open database: Unknown database 'basedatos'
Podemos modificar el código para crear la base de datos en caso de que esta no exista, por ejemplo:
PUBLIC HConn AS Connection
PUBLIC SUB Main()
HConn = NEW Connection
HConn.Type = "mysql"
HConn.Host = "localhost"
HConn.Login = "root"
HConn.Password = ""
HConn.Name = "basedatos"
HConn.Open
IF NOT HConn.Databases.Exist("basedatos") THEN
HConn.Databases.Add("basedatos")
ENDIF
HConn.Close
HConn.Name = "basedatos"
Hconn.Open
END
Podemos ver varios cambios, en primer lugar vemos que ya no nombramos la base de datos antes de abrir la conexión, primero verificamos con esta linea:
IF NOT HConn.Databases.Exist("basedatos") THEN
Si existe o no la base de datos, si no existe la creamos con la siguiente función:
HConn.Databases.Add("basedatos")
Luego que ya tengamos la base de datos creada debemos cerrar la conexión para nombrar la base de datos como parametro:
HConn.Close
HConn.Name = "basedatos"
Hconn.Open
Ya con esto nos evitamos la posibilidad de que ocurra un error al no existir la base de datos, claro que una base de datos contiene tablas y campos que tambien pueden crearse desde el código, pero esto es tema para otro post, espero cualquier comentario, pregunta o sugerencia :)
5 comentarios:
nunca en mi vida he programado con gambas, a ver si me das un cursito un dia destos xD
jajajaja clarooooo cuando usté quiera :D
Hola,todavia programas congambas?. Has probado gambas2 con canaima. Saludos
Hola Miguel, en efecto uso la versión 2.16 y hasta ahora me va bien, tengo miedo de actualizar pero algún día lo tendré que hacer XD
Primero que todo jejeje, que de cierto es que los programas hechos en gambas solo funcionan para linux y tendrias un link o un completo tutorial de gambas para aprender desde cero, hasta ahora he comenzado a entrar en este mundo de la programacion, y he visto las bondades del software libre y me ha fascinado, gracias..
Publicar un comentario