¿Se puede crear con Qt una aplicación Independiente de la BD?
Hola de nuevo :
Dado que soy novato en Qt me da pánico el tener problemas a la hora de distribuir mi aplicación a causa del driver de la BD, me gusta la idea de que pueda funcionar con cualquier BD pudiendo decidir en la configuración del programa que BD usar.
Para no tener problemas usaría SQLite para instalaciones monopuesto que pueden ser muchas (espero, jeje) ( y para el que entiendo el driver viene compilado, o sea que no debe dar ningún problema) y Postgre o MySQL para instalaciones más grandes en red (linux o Mac) u otras como SQL Server, SAP..... o la que sea que tenga el usuario final en casos de windows - (Si no tiene ninguna me decantaré por recomendar Postgre o mySQL.
Con eso creo me podría ahorrar reticencias de usuarios a instalar una BD ( en el caso de instalaciones monopuesto o para quien quiera pueda probar la aplicación sin instalar una BD) y en el caso de instalaciones con más de un terminal es probable que ya tengan una BD, o que haya que instalar una, pero en estos casos la empresa suele tener algún informático al que encargarle la instalación del Servidor de BD o se puede hacer por control remoto.
Ahora bien, ¿Puedo distribuir los drivers compilados (win) (ya que en Linux suelen estarlo en los repositorios, al menos en Ubuntu) de forma de que el usuario final pueda conectarse a su BD?
¿cómo?
He encontrado información acerca de como compilar los drivers (en la web de Qt), pero no se dar con la información de como distribuir esos al cliente final y pensando que éste puede estar a cientos de Km de mi empresa.
Gracias por leer todo el tostón y por vuestra respuesta. Es muy importante para mi saber si voy por buen camino.
Saludos.

Sí se puede
Hombre, claro que puedes distribuirlos... ¡de hecho, si no lo haces, entonces el programa no funcionaría! Veamos, si la memoria no me falla, tienes que crear un subdirectorio dentro del directorio donde está el ejecutable de tu aplicación llamadado 'plugins', y dentro de este otro subdirectorio llamado 'sqldrivers'. Dentro de este subdirectorio, deberías de copiar los archivos .DLL de los drivers de la base de datos que quieras usar.
Compilar los drivers para MySQL o para Postgre en Windows... bueno, eso es ya harina de otro costal :D
¡Un saludo!
plugins en windows
hola Er Bardo, resulta k llevo dias con ese problema y recien veo este coment tuyo y pense k era la solucion a mis problemas. resulta k tengo la dll ya de SQLite que es con lo k estoy trabajando y la copie en el directorio k dices al nivel k dices y fue en vano, copie la k sale en las carpetas del mismo nombre instaladas en QtSDk , incluso probe con las k salen en Qt/mingw.... y con las de Qt/4.8.0/mingw .... . estoy pa volverme loko pk ya no se ni k tan perdio estoy. gracias de antemano.
PD: copio las 2 k aparecen qsqlite4.dll y qsqlited4.dll, incluso las tengo en los 3 niveles , en la raiz de mi .exe , dentro de plugins, y dentro de plugins/sqldrivers y nada men
Bueno, ¿pero alguien los
Bueno, ¿pero alguien los habrá compilado, no? No entiendo como si se trata de un DLL que se puede distribuir, éste no está en ninguna área de descarga. ¿O es que algo se me escapa .......?
Tranquilo que no hay nada raro...
No siempre se puede compilar para cada SO o para cada arquitectura... por ejemplo, compilar el driver para Linux es muy sencillo, instalas MySQL con las librerías, y vuelves a compilar Qt para que también compile el driver de la base de datos. Con Windows, el problema estriba en los diferentes compiladores. En Windows tienes dos opciones de compilador, MinGW y el compilador del Microsoft Visual Studio; puedes descargarte los binarios de MySQL, pero al hacerlo te encuentras con que las cabeceras y librerías contra las que tienes que compilar el driver están compiladas con Visual Studio, y si utilizas MinGW no son compatibles, así que tienes que hacer un reimp y luego enlazarlo y... en fin, que es complicado.
Supongo que, por eso, no tienen compilado el driver para que lo utilices 'out of the box', como se suele decir, sino que te dejan el código y las instrucciones para que, SI LO NECESITAS, lo compiles y lo uses.
¡Un saludo!
Gracias
Ok, Er Bardo.
De momento estoy trabajando sobre Linux en el que ya viene todo "configuradito".
Sabiendo cómo va el tema ya buscaré la forma de compilar los drivers para Windows cuando los necesite. Lo importante es saber que se puede hacer. Lo demás es sólo cuestión de horas y de dar con la forma.
Entiendo por lo que dices que puedo poner todas las dll en la carpeta correspondiente de la aplicación y que debería funcionar en casa del cliente.
Gracias por tu tiempo.
Saludos.
DB Windows
Espero pronto llegues a ese punto, esas horas que dices a mi se me han convertido en días :P, y he decidido dejarlo un poco para no astiarme del tema.
Tiene que haber forma de
Tiene que haber forma de hacerlo. Sean horas o días..... Al final todo se consigue, jeje. Seguro que lo logramos