Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: DanielC++ en 14 Octubre 2008, 22:58 pm



Título: Construir mis propias tablas en C++
Publicado por: DanielC++ en 14 Octubre 2008, 22:58 pm
Hola
Lo que necesito es un poco de información sobre crear tablas en C++,
el caso es que tengo un súper y los programas están hechos en Foxpro
y como estoy aprendiendo C++ con Builder 6.0, tengo programados los Form por
ej. para clientes pero no se como puedo hacer para guardar los datos ingresados.-
En principio es una locura pensar que un autodidacta con muy poco tiempo leyendo sobre C++ pueda construir sus propias bases de datos..?

Espero que esta sea una "discusión"  en la que participen muchos porque siempre
me intereso aprender como hacer mis propias tablas.-

Un saludo
Daniel



Título: Re: Construir mis propias tablas en C++
Publicado por: rob1104 en 15 Octubre 2008, 05:00 am
Hola DanielC++, por lo que tengo entendido C++ no tiene manejador propio de base de datos, por lo tanto es imposible crear tablas; pero no imposible trabajar con ellas, pero para eso tendras que recurrir a un Manejador de Base de Datos Externo, por ejemplo Microsoft Access, MySQL, SQL Server, o el propio FoxPro, ya solo tendrias que crear las funciones y conexiones para manejar los datos de la base de datos en tus programas de C++....

Saludos


Título: Re: Construir mis propias tablas en C++
Publicado por: ҒrεακΠιи∂ en 15 Octubre 2008, 05:33 am
Buenas

Construir una base de datos "real" si es medio imposible para alguien que recien este empezando (por los arboles B, hashing, etc)

Sin embargo, podrias crearte archivos archivos std para crear una pseudo base de datos

Salu2, FreakMind


Título: Re: Construir mis propias tablas en C++
Publicado por: DanielC++ en 15 Octubre 2008, 14:28 pm
Hola
Gracias por interesarse en mi tema.
robbie110487 si vos consideras que es imposible crear tablas en C++ que lenguaje se debe usar, yo tengo entendido que con C++ se puede hacer de todo.-

ҒrεακΠιи∂. por favor decime donde puedo obtener una buena documentación sobre  .std, o si queréis poner algo vos muy agradecido.-

Una pregunta más, por ejemplo un .TXT como el que pongo como Ej. a continuación ordenado por el código cosa que en C++ se puede hacer (por lo menos es lo que creo) y luego insertar cada dato en su correspondiente TEdit, con algún método de búsqueda, no se asemejaria a una tabla...?

        1     Aceite Natuta x 1.500 cc.                        $  3.59     $  6.59
        5     Leche Nido x 800 Grs.                            $ 11.35     $18.99
       39    Azucar fronterita x 1 Kgr.                       $   1.90     $  2.59

Bueno espero más ayuda
Salu2 a to2 



Título: Re: Construir mis propias tablas en C++
Publicado por: ҒrεακΠιи∂ en 15 Octubre 2008, 16:11 pm
Buenas

std es una abreviacion de standard. Por eso stdio (standard input/output) o stdlib (standard library)

Eso es lo que te decia con archivos std. Usar un txt o un binario para guardar la info con un formato determinado y despues recuperarla

Salu2, FreakMind


Título: Re: Construir mis propias tablas en C++
Publicado por: rob1104 en 15 Octubre 2008, 16:35 pm
Disculpen, creo que se mal entendió mi respuesta, me referia a que es imposible crear tablas de la misma manera que en FoxPro, o sea me refiero a que con un:
Código
  1. CREATE TABLE nombretabla;
no vas a crear tablas en C++.
Y claro que se puede hacer de todo, de hecho el motor MySQL, y hasta me atreveria a decir que el mismo FoxPro y SQL Server estan desarrollados en C/C++, pero eso seria un nivel un poco mas arriba de avanzado, ya que tendrias que crear el motor, la interfaz grafica, la interpretacion del lenguaje, en fin, yo creo que tienes  2 opciones mas accesibles:
1.- Lo que te ha dicho  ҒrεακΠιи∂, es valido aunque es un poco de trampa  :P

2.- Crearte funciones para conexion a un Motor de Base de datos ya hecho como MySQL, y poder manipular  los datos desde tus programas de C/C++.

Saludos


Título: Re: Construir mis propias tablas en C++
Publicado por: DanielC++ en 15 Octubre 2008, 16:56 pm
Hola
ҒrεακΠιи∂: te habras reido de lo lindo cuando viste mi respuesta, lo de STD lo tenia leído pero me pareció que te referías a otra cosa, alguna extensión de archivo nueva, no se.-

Citar
Eso es lo que te decia con archivos std. Usar un txt o un binario para guardar la info con un formato determinado y despues recuperarla
Me podrías decir de donde puedo obtener algunos Ej. simples...?

Citar
1.- Lo que te ha dicho  ҒrεακΠιи∂, es valido aunque es un poco de trampa
Por favor necesitaria de ser posible te explayes un poco mas con "es un poco de trampa"

Saludos y muchas gracias.-


Título: Re: Construir mis propias tablas en C++
Publicado por: Erik# en 15 Octubre 2008, 17:39 pm
Hola
ҒrεακΠιи∂: te habras reido de lo lindo cuando viste mi respuesta, lo de STD lo tenia leído pero me pareció que te referías a otra cosa, alguna extensión de archivo nueva, no se.-

Citar
Eso es lo que te decia con archivos std. Usar un txt o un binario para guardar la info con un formato determinado y despues recuperarla
Me podrías decir de donde puedo obtener algunos Ej. simples...?

Citar
1.- Lo que te ha dicho  ҒrεακΠιи∂, es valido aunque es un poco de trampa
Por favor necesitaria de ser posible te explayes un poco mas con "es un poco de trampa"

Saludos y muchas gracias.-

Los ejemplos simples de serian los tipicos printf(); o scanf();, y otros como getchar(); pero luego si quieres un ejemplo algo más de datos:

Código
  1. open("archivo",O_WRONLY | O_APPEND | O_CREAT,0777)


Título: Re: Construir mis propias tablas en C++
Publicado por: rob1104 en 15 Octubre 2008, 18:42 pm
Con lo de trampa me refiero a que no estaras usando exactamente tablas de base de datos "reales", si no que simularas que son tablas pero en realidad son archivos de texto plano, te sera mas dificil hacer consultas, inserciones, etc... pero es valido  :laugh:


Título: Re: Construir mis propias tablas en C++
Publicado por: DanielC++ en 15 Octubre 2008, 20:02 pm
Hola
Gracias a todos y bueno ya tengo una base voy a intentarlo con archivos de texto
tratando de grabarlo ordenado para hacer mas rápida la búsqueda de un det. dato.-
Haber como me va, luego les cuento.-

Saludos


Título: Re:Extraer de un .TXT el contenido para modificarlo
Publicado por: DanielC++ en 17 Octubre 2008, 03:58 am
Hola

Código:
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

struct inputData
{
    int codigo;
    string nombre;
    string apellido;
};

int main(int argc, char *argv[])
{
      inputData info = {0,"",""};
      ofstream output ("C:\\Dev-Cpp\\C++Fuentes\\archivos\\userINFO.txt", ios::app);
   
      if(!output.fail())
  {
                                       
            cout<<endl<<" Ingrese codigo.....: ";
            cin>>info.codigo;
            cin.ignore(1);
            cout<<endl<<" Ingrese su nombre..: ";
            cin>>info.nombre;
            cin.ignore(1);
            cout<<endl<<" Ingrese su apellido: ";
            cin>>info.apellido;
            cin.ignore(1);
             
            cout<<endl<<" Escribiendo en el archivo -userINFO.txt- . . ."<<endl;
             
            output<<info.codigo<<"#";
            output<<info.nombre<<"#";
            output<<info.apellido<<"#";
             
            if (!output.bad())
   {
                cout<<endl<<" Se ha guardado la informacion con exito." <<endl <<endl;
               
            }
            else
   {
                  cout<<endl<<"No se pudo escribir la data en el archivo con exito."<<endl;
                  cout<<endl<<"Verifique que tenga suficiente espacio en el disco duro para la escritura."<<endl;
            }
            output.close();
       }
       else
             cout<<endl<<"No se pudo abrir o crear el archivo..."<<endl;
       
cout << " Pulse cualquier tecla para continuar...";
    system("PAUSE>nul");
return EXIT_SUCCESS;
}

Bueno algo e logrado, pero para seguir adelante nocesito ayuda.-
Lo que tengo escrito en userINFO.txt es lo siguiente:
0001#David#Rosental#0002#Roberto#Virgili#...0835#...#....#....
Lo que no se como hacer y espero puedan ayudarme es:
1): Que sintaxis debo implementar para realizar una búsqueda de los códigos...?
2): una vez hallado el mismo, como debo hacer para guardar el contenido en tres
     variables distintas...?
     Ej. string codigo =  0002 - string nombre = Roberto - string apllido = Virgili

Espero se entienda.-
Saludos


Título: Re: Construir mis propias tablas en C++
Publicado por: savanibi en 31 Octubre 2008, 10:13 am
Hola amig@s, soy nueva por este foro, y leyendo sus comentarios estaba interesada en el tema, y es que estoy intentando hacer una tabla, o una especie de tabla en archivos .txt de forma que:

ofstream fs("nombre.txt", ios::app);
fs <<i<<'\t'<<nombre<<'\t'<<resultado<<'\n';
fs.close();

La cuestión es que quiero que aparezca algo así como:

1      Nombre1           Resultado_OK
2      Nombre2           Resultado_NOOK
3      Nombremáslargo            Resultado_OK

Entonces el problema es que cuando escribo un nombre largo, como estoy usando tabuladores, pues no me quedan las columnas bien.

También intenté escribirlo con fs.write() y colocando el cursor con fs.seekp(), pero me escribía más de lo que ponía y me aparecía algo así:

1        Nombre1  ...ando


Título: Re: Construir mis propias tablas en C++
Publicado por: savanibi en 31 Octubre 2008, 10:15 am
Lo siento publiqué sin darme cuenta sin terminar:

quería decir que me aparecía algo así:

1        Nombre1  ...ando     Resultado_OK
2        Nombre2  ....ando    Resultado_OKREsult
3        Nombremáslargo     Resultado_NOOK Re

Bueno les agradezco mucho su ayuda. Lo siento si alguna pregunta es muy tonta, pero recién ando en el tema.


Título: Re: Construir mis propias tablas en C++
Publicado por: Anibal784 en 31 Octubre 2008, 12:43 pm
    Juas, la web es un repositorio gigante  :D  :D  :D.

http://c.conclase.net/ficheros/index.php, fíjensen acá, sobre todo en la parte de Ficheros de índices (http://c.conclase.net/ficheros/index.php?cap=007)

savanibi, buscá darle formato a la salida en C++ ya que existen un par de ¿funciones? sobre flujos que permiten modificar (por ejemplo si escribís un número que salga con 4 dígitos, ej: 1 se escribiría como 0001).


Título: Re:problema en C++
Publicado por: yasmin_princess en 7 Junio 2013, 02:20 am
necesito que me ayuden por que  nose nada de c++ y me encargaron esto porfavor ayudenme  se los agradecería demasiado

 declare un arreglo de tamaño 100 luego capture en cada espacio que sea multiplo de 7 un numero entero que debera estar en el rango de 20-300, en caso de no estar en el rango vuelvalo a pedir hasta que lo sea. muestrela tabla completa, montrando la pocision de cada elemento y lo que contiene


Título: Re: Construir mis propias tablas en C++
Publicado por: yasmin_princess en 7 Junio 2013, 02:25 am
necesito que me ayuden por que  nose nada de c++ y me encargaron esto porfavor ayudenme  se los agradecería demasiado

 declare un arreglo de tamaño 100 luego capture en cada espacio que sea multiplo de 7 un numero entero que debera estar en el rango de 20-300, en caso de no estar en el rango vuelvalo a pedir hasta que lo sea. muestrela tabla completa, montrando la pocision de cada elemento y lo que contiene


Título: Re: Construir mis propias tablas en C++
Publicado por: flony en 7 Junio 2013, 04:30 am
se que se puede hacer, nunca me salio asi que eleji otro reto personal :)
lo que dicen los chicos de manejo de txt lo podes encontrar en varios lugares el que dice anibal784 esta bueno...ahora si queres una base de datos reales, que es donde cruzas informacion de varias tablas para obtener una, eso solo se logra con mysql, sql server, oracle, sql lite,foxpro etc tec para ello deberas leer un poco de lenguaje sql...y aca la parte dificil que dos lenguajes c++ ysql se entiendan...imagina es comoq ue un chino y un yanqui se cruzan no se van a entender, para ello los productos descriptos (mysql ...foxpro etc) tienen driver para conectar ambos lenguajes
aca paginas que hablan de ello
http://www.carlosrobles.com/blog/2010/10/usar-bases-de-datos-mysql-en-visual-c/ (http://www.carlosrobles.com/blog/2010/10/usar-bases-de-datos-mysql-en-visual-c/)
http://dev.mysql.com/doc/refman/5.1/en/connector-cpp-apps-windows-visual-studio.html (http://dev.mysql.com/doc/refman/5.1/en/connector-cpp-apps-windows-visual-studio.html)
http://msdn.microsoft.com/es-es/library/e80y5yhx(v=vs.80).aspx (http://msdn.microsoft.com/es-es/library/e80y5yhx(v=vs.80).aspx)
http://www.cprogramming.com/tutorial/c++_database_access_using_ado.html (http://www.cprogramming.com/tutorial/c++_database_access_using_ado.html)