![]() |
öffnen v. ADO Table sehr langsam
Hallo an alle,
das öffenen einer simplen dBase Table mit ca. 300 Records dauer fast ewig.. 1. Einstellungen: 1.1. folgende Einstellungen habe ich bei der ADOConnection: ConnectionOption := coConnectUnspecified CursorLocation=clUseClient IsolationLevel=ilReadCommitted LoginPrompt=false; Mode=cmReadWrite 1.2. Einstellung ADOTable AutiCalcFields=false CacheSize=1 CursorLocation=clUserClient CursorType=ctDynamic LockType=ltBatchOptimistic MarshalOption=moMarshalModifiedOnly MaxRecords=0 ReadOnly=false TableDirect=true; 2. so öffne ich di Tabelle: 2.1.) ADOConnection aufbauen und connect Screen.Cursor := crSQLWait; ImpAusstForm.ADODBFTable.Close; x_DBFDir := ExtractFileDir(ImpAusstForm.OpenDialog1.FileName); vFileName := ExtractFilename(ImpAusstForm.OpenDialog1.FileName) ; ImpAusstForm.ADODBFConnection.ConnectionString := ''; ImpAusstForm.ADODBFConnection.ConnectionString:='P rovider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+ x_DBFDir +';Mode=ReadWrite; Extended Properties=dBase III;'; ImpAusstForm.ADODBFConnection.LoginPrompt:=false; ImpAusstForm.ADODBFConnection.Connected:=true; 2.2. öffnen der ADTable //bis daher gehts ja noch schnell, aber das öffnen der tabelle dauert ca. 20-30Sec. ImpAusstForm.ADODBFTable.TableName := vFileName; ImpAusstForm.ADODBFTable.open; Screen.Cursor := crDefault; meine Frage: 1. was kann man bei den Einstellungen verbessern (ADOConnection u. ADOTable) 2. wie schauts mit dem connectionstring aus, ist der OK ? danke für eure hilfe fredi |
Re: öffnen v. ADO Table sehr langsam
Du öffnest eine dBase III Tabelle mit der Microsoft Jet (Access). Das dauert!
Zuerst wird die MS Jet aufgerufen, in dieser Instanz wird dann auf eine dBase III Tabelle verwiesen, zu der die MS Jet dann wieder den passenden ODBC-Treiber laden muß, damit sie auf dBase zugreifen kann... Es gibt mehrere Möglichkeiten: 1. Wenn due unbedingt ADo verwenden möchtest, benutze gleich Access als Datenbank. 2. Verwende die BDE und damit die "normalen" Datenbank-Komponenten, die Delphi zur Verfügung stellt 3. Suche mal im Internet nach nativen dBase-Komponenten, mit denen du direkt auf dBase zugreifen kannst. (z. B. ![]() Grüße Mikhal |
Re: öffnen v. ADO Table sehr langsam
Hallo fredi,
du kannst es auch mal mit Advantage TDataSet Descendant for Windows von ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz