C/Visual C - Stack overflow

 
Vista:

Stack overflow

Publicado por Mary (1 intervención) el 27/03/2007 17:45:29
Hola,

Tengo una aplicacion C++ que conecta con una bd SQL.
En el formulario principal tengo los siguientes elementos para realizar dicha conexión:
Un elemento ADOConnection , en el diseño:
ADOConnection1->Connected=false
ADOConnection1->ConnectionString= Provider=SQLOLEDB.1;Password=entrar;Persist Security Info=True;User ID=user;Initial Catalog=MIBASE;Data Source=MISERVIDOR

También tengo un elemento ADOQuery, en el diseño:
ADOQuery1->Connection=ADOConnection1

En el código, en la funcion FormCreate del formulario principal del proyecto:
void __fastcall TFormEntrada::FormCreate(TObject *Sender)
{
//Conectamos con la BD
ADOConnection1->Connected=true;
//Creamos la consulta
AnsiString asCons1 ("SELECT NOMBRE FROM USUARIOS ");
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(asCons1);
ADOQuery1->Active = true;

ADOQuery1->First();
while (!ADOQuery1->Eof)
{
cbUsuario->Items->Add(ADOQuery1->FieldByName("NOMBRE")->AsString);
ADOQuery1->Next();
}
ADOConnection1->Close();

}

La aplicación hace bien la consulta a la bd, devuelve los valores correctos pero cuando la cierro me da un error “Stack overflow”.
Me falta algún componente para la conexión a la bd?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Stack overflow

Publicado por Nelek (816 intervenciones) el 28/03/2007 07:23:09
Hola,

con el tema de la base de datos no te puedo ayudar porque no estoy muy puesto en el tema, pero el mensaje "Stack overflow" a mi me ha venido en otras aplicaciones cuando se hacian muchas llamadas a funciones antes de retornar algun valor. Es decir:

Funcion1 () -> Funcion2 () -> Funcion3 () -> Valor retorno <---- esto no lo daria

funcion1 () -> funcion2 () -> .... -> funcion20 () -> valor retorno <---- esto posiblemente si lo daria.

Echale un vistazo a cuantas consultas realizas antes de hacer una devolucion de valor e intenta acortarlo en la medida de lo posible
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar