Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: sebastromero en 28 Junio 2013, 22:20 pm



Título: Ayuda con base de datos en C++
Publicado por: sebastromero en 28 Junio 2013, 22:20 pm
Saludos de antemano muchas gracias por la ayuda. Soy nuevo en el foro y escribo para ver si alguien tiene alguna info que me pueda ayudar con un proyecto. Tengo un programa en c++  (totalmente funcional) que maneja todos los clientes de un taller mecánico, sin embargo todos los datos (vehículos, mecánicos, trabajos realizados, clientes, etc) lo estoy manejando con listas enlazadas. Mi consulta es si hay alguna forma para implementar alguna base de datos formal  donde yo pueda enviar las listas enlazadas  de datos que ya tienen varios cientos de datos cada una y almacenarlos.
Hasta el momento conozco muy poco sobre bases de datos y de ahí que no he podido encontrar alguna forma de hacerlo


Título: Re: Ayuda con base de datos en C++
Publicado por: ThePinkPanther en 28 Junio 2013, 23:24 pm
y estas listas enlazadas no las guardas en el disco o.O?
tienes muchas formas de guardar información , puedas usar archivos , si no alguna api que te facilite el trabajo con algun tipo de motor de base de datos.


Título: Re: Ayuda con base de datos en C++
Publicado por: eferion en 29 Junio 2013, 09:50 am
Usa Sqlite... no requiere servidor, no requiere instalación, su rendimiento es aceptable y usa sql para interactuar con la aplicación.


Título: Re: Ayuda con base de datos en C++
Publicado por: mutanteHenry en 30 Junio 2013, 07:35 am
Usa Sqlite... no requiere servidor, no requiere instalación, su rendimiento es aceptable y usa sql para interactuar con la aplicación.
bien, voy a ver, ya que tengo un problema similar con un monton de datos guardados en archivo de texto y me gustaria tenerlos en una base de datos para acceder a ellos por otros medios tambien
si lis datos estan en xml? seguro primero he de convertirlos a text antes de trabajarlos con C........ mmmm
saludos


Título: Re: Ayuda con base de datos en C++
Publicado por: eferion en 1 Julio 2013, 08:18 am
si lis datos estan en xml? seguro primero he de convertirlos a text antes de trabajarlos con C........ mmmm

Para poder manipular datos en c ( quien dice c, dice c, c++, c#, java, perl, ruby, ... ) éstos tienen que estar en tipos propios del lenguaje ( int, char, double, char*, ... ).

Luego esa información, como norma general, los programadores tienen la extraña necesidad de almacenarla en disco. Para realizar esta tarea hay tres formas diferentes:

  • Guardar datos binarios.
  • Guardar los datos en formato legible.
  • Almacenar la información en una base de datos.

El primer formato es el más sencillo, ya que coges los datos tal cual los tiene tu programa y los vuelcas a un fichero de texto. Esto presenta el inconveniente de que la información almacenada es complicado editarla de forma manual.

El segundo caso requiere un proceso de "formateo" de la información, la idea es que la información generada por el programa pueda ser leída y fácilmente modificada por una persona... es el caso de usar XML, los antiguos INI, etc.

En el tercer caso delegamos la responsabilidad de almacenar los datos en un programa o código externo, éstos como normal general ( por cuestiones de rendimiento, escalado, comodidad, ... ) se guardan en formato binario, pero eso a nosotros nos da igual, ya que solo necesitamos conocer la forma de interactuar con el motor de la base de datos para conseguir interactuar con la información que almacena.

Dicho esto, si tienes los datos almacenados en XML, tendrás que hacer un pequeño parche que lea esos datos y los vuelque a tu base de datos.