 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
rivo Lt JG

Registrado: 13 Mar 2004Mensajes: 72Ubicación: Asturias (España)
|
Publicado: Sab 13 Mar, 2004 7:29 pm Asunto: obtener datos de una base de datos |
|
|
Estoy intentando obtener los datos de una base de datos de access, el problema es que hago la consulta y no me devulve aparentemente nada, yo tengo puesto esto :
Query2->OpenDatabase();
Query2->SQL->Clear();
Query2->SQL->Add("Select Nombre From clientes where nif="+ Edit3->Text +";");
Query2->ExecSQL();
String Valor=Query2->FieldByName("Nombre")->AsString;
Edit2->Text=Valor;
Edit4->Text=Query2->Text;
Nombre es de tipo texto y nif es un entero.
Inserto en Edit3 un numero el cual solo coincide con un registro en la base de datos.
Los edits los estoy usando para comprobar lo que devuelve, el edit 4 me devulve lo correcto la consulta bien planteada, pero el edit2 no me devuelve nada.
Espero que me puedan ayudar.
Un saludo |
|
| Volver arriba |
|
 |
XyVy Master


Registrado: 25 Ago 2002Mensajes: 557Ubicación: Murcia (España)
|
Publicado: Dom 14 Mar, 2004 12:46 am Asunto: |
|
|
Rivo mira ExecSQL se utiliza para sentencias SQL que no devuelven resultados, tipo INSERT, UPDATE, DELETE y otras, y para las consultas tipo SELECT debes usar Open, que lo que hará será ejecutar la sentencia contra el SGBD y obtener un cursor, luego puedes iterar por el resultado con Next, esto así porque un SELECT podría devolver varias tuplas en vez de solo una.
Supongamos que tu consulta solo devuelve una, entonces debería ser algo así:
| Código: |
Query->SQL->Clear();
Query->SQL->Add("Select Nombre From clientes where nif="+ Edit3->Text +";");
Query->Prepare();
Query->Open();
Query->First(); // se posiciona en el primer registro del resultado
Edit2->Text=Query2->FieldByName("Nombre")->AsString;
// Lo que no se es que quieres hacer con lo siguiente:
// Edit4->Text=Query2->Text;
Query->Close();
|
Por cierto mejor que usar String, usa AnsiString.
Ciao. _________________ OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins. |
|
| Volver arriba |
|
 |
rivo Lt JG

Registrado: 13 Mar 2004Mensajes: 72Ubicación: Asturias (España)
|
Publicado: Dom 14 Mar, 2004 11:31 pm Asunto: |
|
|
Este codigo funciona mucho mejor que el que tenia yo , muchas gracias por resolverme la duda y aclararme unas cosillas sobre bases de datos en builder.
Un saludo |
|
| Volver arriba |
|
 |
|
|
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
|
© 2002–2026 Club Builder · Funciona con phpBB.
|