Re: Error A Concexion En Base
Citar:
Si me di cuenta de eso pero no podía lograr o direccionar a la base que necesitaba. . . Cual seria el código para la conexión en estos casos?
No es cuestión de código solamente. Si no entiendes para qué son las propiedades del objecto Connection siempre tendrás problemas. Te las cuento deprisa haciendo hincapié en SQLite:
-
Type: {sqlite, mysql, firebird, odbc, etc.) el tipo de base de datos.
-
Host: la dirección ip o url del servidor para bases de internet (mysql, firebird, etc.) o
la carpeta donde está la base de datos si es sqlite
-
Port: El puerto de conexión a la Base de Datos. Para SQLite no es necesario.
-
user: El nombre del usuario de la base de datos. Para SQlite normalmente no es necesario
-
password: La calve del usuario de la base de datos. Lo mismo que el anterior, para SQLite no suele ser necesaria.
-
Name: El nombre de la base de datos. En los servidores de internet, eso, su nombre. En SQLite el nombre del fichero que la contiene, que tiene que estar dentro de la carpeta que hemos puesto en Host, por supuesto.
Es decir, para conectar con SQLite necesitas especificar estos tres parámetros:
miconexion.type="sqlite"
miconexion.host= /mi_carpeta_donde_está_mi_ base_en_mi_disco_duro/
miconexion.Name=el_nombre_de_mi_bd
miconexion.Open()
Sencillo como ves. La única complicación viene si colocas la base de datos dentro del proyecto mientras lo estás desarrollando. ¿Por qué? porque en tiempo de diseño los path son relativos a la carpeta donde está el proyecto de
gambas y en tiempo de ejecución son absolutos.
Se pueden dar distintas situaciones: Si tienes la Base de Datos dentro de la carpeta de tu proyecto en tiempo de diseño, Si tienes la Base de Datos en un path relativo a tu usuario o si tienes la Base de datos en un Path "absoluto", es decir fuera del home de tu usuario.
Para no liarte, un consejo:
-
Créate una carpeta fuera del proyecto de gambas y coloca ahí las Bases de Datos SQLite.
Puedes poner todas las que quieras. No metas las bases de Datos dentro de la carpeta del Proyecto. Así no tendrás problemas con los paths relativos y absolutos.
Eso sí, recuerda que si compilas tu programa y lo quieres ejecutar en otro ordenador, los paths no existirán, por cuanto los usuarios de los otros ordenadores no se llamarán igual que el tuyo en tu ordenador. Para no tener problemas entonces, utiliza el siguiente código
Miconexion.Host=user.home &/ "micarpetadebasesdedatos"/
Con eso te funcionará en cualquier ordenador... siempre que en él exista esa carpeta, claro.
Saludos