| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Pugile Ens

Registrado: 26 Dic 2006Mensajes: 29Ubicación: Mexico
|
Publicado: Vie 27 Mar, 2009 6:15 am Asunto: Sqlite 3 y Builder C++ 2009 |
|
|
Alguien me podria explicar como puedo usar esta magnifica base de datos con nuestro querido compilador Builder.
He buscado mucho en la red pero no he dado con la solucion. Encontre como hacerlo para VC++ pero para builder no hay nada.
Segun veo en un mensaje anterior
https://cppbuilder.es/viewtopic.php?t=10843&highlight=sqlite
nuestro amigo _Willa indica que debemos compilar el codigo fuente para obtener una libreria .lib y junto con el .h quedaria listo.
Pues bueno la verdad es que no se como.
Me descargue el sqlite3.h el sqlite.def y el sqlite3.dll de la pagina oficial. Luego utilize la herramienta implib.exe de builder de la siguiente manera:
implib.exe sqlite3.lib sqlite3.def lo que me dio como resultado el archivo sqlite3.lib
Luego copie el dll y el .lib a la carpeta lib de builder y el .h a la carpeta include del mismo builder.
en mi programa tengo:
#include "sqlite3.h"
No se si lo que estoy haciendo esta bien o me falta algo por hacer pero al intentar compilar mi programa si uso alguna funcion propia de sqlite me envia el siguiente error:
[ILINK32 Error] Error: Unresolved external '_sqlite3_open' referenced from C:\USERS\CARLOS\DOCUMENTS\RAD STUDIO\PROJECTS\RELEASE\UNIT1.OBJ
Espero algun amigo del foro pueda ayudarme.
Ultima edición por Pugile el Sab 28 Mar, 2009 5:04 am, editado 1 vez |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Vie 27 Mar, 2009 8:30 am Asunto: |
|
|
Te falta incluir sqlite3.lib en tu proyecto.
Saludos. |
|
| Volver arriba |
|
 |
Pugile Ens

Registrado: 26 Dic 2006Mensajes: 29Ubicación: Mexico
|
Publicado: Sab 28 Mar, 2009 5:13 am Asunto: |
|
|
Antes que nada gracias escafandra por responder tan rapido.
Referente a tu respuesta de incluir el .lib en el proyecto te refieres a ir al menu project add to project y luego agregar el sqlite3.lib.
Porque ese paso ya lo efectue pero aun asi me sigue marcando el error |
|
| Volver arriba |
|
 |
jacko Master


Registrado: 03 Sep 2005Mensajes: 287Ubicación: Colombia
|
Publicado: Sab 28 Mar, 2009 3:36 pm Asunto: |
|
|
Hola Pugile
Creo que Escafandra si se refiere a adicionarlo como tu hiciste.
El procedimiento que tu dices yo lo hice en Borland C++ 6 y me funcionó bien.
Intestaste crear un proyecto nuevo? Intentalo y nos avisas.
Bye. _________________ Dios es real... a menos que se declare entero! |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Lun 30 Mar, 2009 12:52 pm Asunto: |
|
|
| Pugile escribió: | | ...Referente a tu respuesta de incluir el .lib en el proyecto te refieres a ir al menu project add to project y luego agregar el sqlite3.lib... |
Así es. El error del link es lo que indica.
Bien tu sqlite3.lib tiene un error o, como dice jacko el error puede estar en la configuración de tu proyecto.
Saludos. |
|
| Volver arriba |
|
 |
Pugile Ens

Registrado: 26 Dic 2006Mensajes: 29Ubicación: Mexico
|
Publicado: Mar 31 Mar, 2009 7:51 pm Asunto: |
|
|
Haber miren antes que nada gracias por responder rapido.
Pues bueno de nuevo he creado un proyecto nuevo como me comentan. Posteriormente inclui el .lib de la siguente manera:
Project -> Add to Project -> Elijo mi archivo lib
Probe asi y nada sigue marcando el error.
Luego vi por algun post no recuerdo donde que incluian tambien el .lib mediante pragma asi:
#pragma link "mi archivo .lib"
Lo cual efectue y nada sigue el error.
Adjunto unas imagenes para que lo aprecien mejor.
Tambien me entro la duda de que el archivo .lib estubiese dañado pero pues lo cree con la herramienta de builder implib a partir de la dll de sqlite3 que descargue de la pagina oficial. Y tambien del archivo .def y la lib resultado es igual.
Miren la dll que descargue desde la pagina oficial mide 487kb el archivo .lib mide 21.5kb
Les adjunto mi dll y el .lib
[url] http://www.dcoaxaca.com/sqlite3.lib [/url]
[url] http://www.dcoaxaca.com/sqlite3.dll [/url]
Si son tan amables de probar la dll que tengo y el lib que cree a partir de la dll y asi descartar la posibilidad de error en el archivo .lib |
|
| Volver arriba |
|
 |
_Willa Capt


Registrado: 28 Ago 2002Mensajes: 169Ubicación: Madrid ( España )
|
Publicado: Jue 02 Abr, 2009 2:09 pm Asunto: |
|
|
Buenas,
Lo que hago yo para crear el .lib es bajarme de la pagina oficional
http://www.sqlite.org/download.html los ultimos fuentes,
me creo desde builder un proyecto tipico para crear lib, y añado
todo el los ficheros .c y .h al proyecto.
Despues compilo todo.
"No me acuerdo se habia que hacer algun pequeño ajuste"
y creo el .lib, que puedo exportar a cualquier aplicación de BCB.
Hasta ahora todo lo que he probado con este modelo de base de datos
va perfecto. habiendo unas extensiones en Firefox, llamadas "SQLite Manager" que permiten manejar desde el mismo, cualquier base de datos, permitiendo crear tablas, consultarlas y otros de una manera más facil. _________________ Saludos
~~~~~~~~
_Willa
~~~~~~~~
www.avancegame.com |
|
| Volver arriba |
|
 |
jacko Master


Registrado: 03 Sep 2005Mensajes: 287Ubicación: Colombia
|
Publicado: Lun 15 Jun, 2009 3:23 am Asunto: Procedimiento Final |
|
|
Hola Pugile
Luego de escarbar en mi memoria, e intentarlo muchas veces he encontrado la forma de conectar SQLite con BCB 2006.
1. Debes descargar de la pagina web www.sqlite.org los siguientes archivos:
- sqlite-amalgamation-xxx.zip
- sqlite-xxx.zip (Archivos binarios precompilados para Windows)
2. Descomprimes el primer archivo (amalgamation...) y copias el sqlite3.h en tu carpeta del proyecto.
3. Descomprimes el segundo archivo (binarios...) y obtienes el archivo sqlite3.dll.
4. Utilizas la herramienta IMPLIB con la siguiente sintaxis:
- implib -a sqlite3.lib sqlite3.dll
(No tengo que decirte que implib y sqlite3.dll deben estar en la misma carpeta y ejecutar esto en una ventana de comandos DOS)
5. Tomas el archivo sqlite3.lib y lo copias en tu carpeta del proyecto.
6. Abres BCB, creas un nuevo proyecto, luego adicionas el archivo sqlite3.lib en Project --> Add to Project.
7. Escribes en el encabezado del archivo el codigo | Código: | #include "sqlite3.h" |
8. Y por ultimo, escribes algo de codigo para mostrar la conexion, yo creé un botón y le puse este codigo:
| Código: |
sqlite3 *db;
int rc;
rc = sqlite3_open("test.db", &db);
if( rc )
{
Edit1->Text = "Can't open database";
sqlite3_close(db);
}
|
9. Si todo funciona bien, deberias ver en tu carpeta de proyecto un archivo nuevo llamado "test.db" luego de haber ejecutado y dado clic en el boton.
10. Luego de esto ya podemos complicarnos un poco con la funcion callback, que es algo dificil de entender.
Espero que este paso a paso te ayude... y no haya llegado muy tarde!
Gracias! _________________ Dios es real... a menos que se declare entero! |
|
| Volver arriba |
|
 |
|