SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: el bare en Viernes 6 de Noviembre de 2009, 23:54

Título: Builder y SQL Server??
Publicado por: el bare en Viernes 6 de Noviembre de 2009, 23:54
Que tal Gente!!!,ahora les tengo una pregunta sobre bases de datos, espero y me puedan orientar.
Estoy desarrollando una aplicacion pequena, y ocupo meterle base de datos, elegi a SQL, ya tengo hecha la conexion con la base de datos, ya agrego datos a la tabla, lo que no se es como hacer consultas.
He visto por ahi un componente que se llama Query, pero no se usarlo,sera ese??..En fin, me gustaria saber como puedo hacer para consultar datos de una tabla y mostrarlos en un Edit.
Estoy trabajando con el ADOConnection.

Cualquier Ayuda o consejo... estare muy agradecido... :lol:

Saludos...
Título: Re: Builder y SQL Server??
Publicado por: AnimaSubtilis en Sábado 7 de Noviembre de 2009, 17:26
Por mi parte para realizar consultas a las base de datos utilizo el componente TADODataSet

algo asi

Código: C++
  1.  
  2. ADODataSet1->Close();//primero cierro el componente para volver a cargarlo
  3. ADODataSet1->ComandText = "select campo from tabla where condicion";//Aca generas la consulta que nescesitas
  4. ADODataSet1->Open;//Aca abres la vista....
  5. ADODataSet1->FielByName("campo")->AsString;//Aca capturas el dato... si son mas de uno tienes que recorrerlo pero no me acuerdo como es...
  6.  
  7.  

Espero que sea de ayuda.......

cualquier cosa me cuentas......
Título: Re: Builder y SQL Server??
Publicado por: el bare en Sábado 7 de Noviembre de 2009, 20:52
Que tal Anima...Ya habia visto el componente..no tenia idea de que funcionara en consultas... ^_^
En fin, lo implemente en un boton, lo puse asi:

Código: C++
  1.  
  2. ADODataSet1->Close();//primero cierro el componente para volver a cargarlo
  3.  ADODataSet1->CommandText = "select * from TablaClientes ";//Aca generas la consulta que nescesitas
  4.  ADODataSet1->Open();//Aca abres la vista....
  5. //ADODataSet1->FieldByName("campo")->AsString;//Aca capturas el dato... si son mas de uno tienes que recorrerlo pero no me acuerdo como es...
  6. showclientes->ShowModal();
  7.  
  8.  

Como podras ver, comente la linea de Fieldbyname, ya que me marcaba un error en tiempo de ejecucion, diciendo que no encontraba a "campo".
lo comente porque no se que es campo, no se si me podrias explicar a que le asignaste ese nombre... :huh: ,es un edit? o que es??

el codigo lo puse en un boton para mostrar lo consultado, no se si este bien...:S:S

Este componente tambien se puede usar con un DBGrid??...asi muestro los datos actualmente, solo que si cierro el programa, y lo vuelvo a abrir, ya no me los muestra, tengo que agregarle datos nuevos para que muestre todos los que hay..

Espero no haberte confundido con tantas preguntas..

Saludos... :D
Título: Re: Builder y SQL Server??
Publicado por: AnimaSubtilis en Sábado 7 de Noviembre de 2009, 21:13
Claro que lo puedes utiliuzar con un dbgrid

lo que me preguntaste de FieldByName como su nombre dice es por nombre....... y campo es un campo de la consulta.... osea

Código: C++
  1.  
  2.  AnsIString documento;
  3.  ADODataSet1->Close();//primero cierro el componente para volver a cargarlo
  4.  ADODataSet1->CommandText = "select documento from TablaClientes ";//Aca generas la consulta que nescesitas
  5.  ADODataSet1->Open();//Aca abres la vista....
  6.  documento = ADODataSet1->FieldByName("documento")->AsString;
  7.  ShowMessage(documento);
  8.  
  9.  

suponiento que en la TablaClienes existe un campo documento este muestra el primer documento de la consulta Ok-......

espero que sea de ayuda...


taluego..................
Título: Re: Builder y SQL Server??
Publicado por: el bare en Sábado 7 de Noviembre de 2009, 21:50
Hola.
Efectivamente!!!, me muestra el primer campo de la tabla, en mi caso seria el nombre, y ya se lo copie a un Edit.....  :D  :D

Código: C++
  1.  
  2.  AnsiString Nombre;
  3.   ADODataSet1->Close();//primero cierro el componente para volver a cargarlo
  4.  ADODataSet1->CommandText = "select * from TablaClientes where Ciudad = 'ameca' ";//Aca generas la consulta que nescesitas
  5.   ADODataSet1->Open();//Aca abres la vista....
  6.   Nombre = ADODataSet1->FieldByName("Nombre")->AsString;
  7.   ShowMessage(Nombre);
  8.   Edit1->Text=Nombre;
  9.  
  10. showclientes->ShowModal();
  11.  
  12.  

Oye, y como lo utilizas en un DBGrid??,tengo que relacionar las tablas o algo asi??

Saludos... :)
Título: Re: Builder y SQL Server??
Publicado por: AnimaSubtilis en Lunes 9 de Noviembre de 2009, 19:31
SIPO SE LIGAN
de la misma manera que un TTable...


pones un TDataSource en la propiedad DataSet buscas el TADODataSet,
en el DBGrid en la propiedad DataSource buscas el TDaraSource y ya eso es todo


......
Título: Re: Builder y SQL Server??
Publicado por: el bare en Martes 10 de Noviembre de 2009, 07:58
Orale!!!, ya lo probe y funciono al 100%... :D  :D  :D  :D  :D  :D
Muchisimas Gracias por todo Anima!!!... :beer:  :beer:

Saludos!!!!..... :hola:  :hola: .Mil Gracias!!!!... :comp:
Título: Re: Builder y SQL Server??
Publicado por: AnimaSubtilis en Martes 10 de Noviembre de 2009, 14:55
De nadas.........................

Cualquier cosa con mucho gusto........

 :P

taluego........