Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Sqlite 3 y Builder C++ 2009

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Sqlite 3 y Builder C++ 2009 Responder citando

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
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mensaje    Asunto: Responder citando

Te falta incluir sqlite3.lib en tu proyecto.

Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mensaje    Asunto: Responder citando

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
~~~~~~~~
Wink _Willa
~~~~~~~~
www.avancegame.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Mensaje    Asunto: Procedimiento Final Responder citando

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! Very Happy

Gracias!
_________________
Dios es real... a menos que se declare entero!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.