Problem mit TQuery Datenbank.. vieleicht auch TTreeView
-
Also ich habe ein Problem *ziehmlich großes .. den ich habe keinerlei idee mehr für mögliche ursachen*
der Code ist
try { Query1->Close(); Query1->SQL->Clear(); Query1->SQL->Add("select distinct Interpret, Album from Data");//"SELECT Album, Titel FROM Data WHERE Interpret = 'Hanswerner'"); Query1->Open(); AnsiString Interpretabl; TTreeNode* Item; while(!Query1->Eof) { if((Interpretabl != Query1->FieldByName("Interpret")->AsString) && (Query1->FieldByName("Interpret")->AsString != "")) { Item = TreeView2->Items->Add(NULL, Query1->FieldByName("Interpret")->AsString); Interpretabl = Query1->FieldByName("Interpret")->AsString; } if( Query1->FieldByName("Album")->AsString != "") { TTreeNode* Album = TreeView2->Items->AddChild(Item, Query1->FieldByName("Album")->AsString); } Query1->Next(); } } catch(...) { Application->MessageBox("Error opening Database",NULL,NULL); }Dabei sollen daten aus einem Tabel Daten ausgelesen werden und in einem Tree Darzustellen...
Leider gibt es ab einer gewissen Datenbankgröße massive Probleme (sprich der catch fall trifft ein
)
ohne eigenen catch tritt der standart catch fall von Borland (Formcreate) einich hoffe es kann mir jemand helfen
-
Hallo
benutzt den Debugger und las dir die Messages der geworfenen Exceptions anzeigen, anstatt sie einfach mit deiner Standard-Message anzuzeigen.
bis bald
akari
-
okay... die fehlermeldung ist
"Project Project1.exe raised exception class EOutOfResources with message 'Unable to insert an item'. Process stopped. Use Step or Run to continue."
-
Hallo
Wieviele Datensätze willst du denn eintragen und bei dem wievieltem kommt die Exception?
bis bald
akari
-
insgesammt etwa 200 (mit children)
das soll die interpreten und alben meiner Musiksammlung darstellen... (später sollen auch mehr als 200 möglich sein)
hmm....
wollte gerade einen zähler einbauen... laut dem es schon beim ersten währe...
aber ich habe mitlerweile auch ne anderen Error :
"Project Project1.exe raised exeption class EAccessViolation with Message 'Access ciolation at Adress 40134100 in module 'vcl60bpl'. Read of adress 00000057'. Process stopped. Use Step or Run to continue"
-
Also... vorraussichtlich... bestand das problem aus leeren Einträgen in der Datenbank
habe mal alles leere durch UNBEKANNT ersetzen lassen... jetzt geht alles