![]() |
Datenbank: Absolute Database • Zugriff über: ABSTable, DataSource
DataBaseFileName
Hallo,
habe da mal wieder einProblem! Folgendes kriege ich da einfach nicht gebacken: D:\Delpi\Prog\Daten DasProgramm liegt im Ordner Prog, die Daten (Info.abs) im Ordner Daten. Für ABSDatabase und alle Tables benutze ich die FormDaten So sieht das bei Delphi aus:
Delphi-Quellcode:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ABSMain, ExtCtrls, DBTables; const DataBaseFileName: String = '\Daten\Info.abs'; type TFormDaten = class(TForm)
Delphi-Quellcode:
Das sollte doch eigentlich alles richtig sein. Es funktioniert nicht! Was mache ich da falsch?
procedure TFormDaten.FormCreate(Sender: TObject);
begin ABSDataBase.Close; ABSDatabase.DatabaseFileName := ExtractFilePath(Application.ExeName) + DataBaseFileName; ABSDataBase.Open; Table1.Open; Table2.Open; Table3.Open; end; Fritz |
Re: DataBaseFileName
ExtractFilePath enthält schon den letzten Backslash. Vielleicht liegt es daran.
|
Re: DataBaseFileName
Hallo DeddyH,
danke für die schnelle Antwort, aber es geht ohne den Backslash auch nicht. DataBaseFileName: String = 'Daten\Info.abs'; Fehlermeldung: Das System kann den Pfad nicht finden. Fritz |
Re: DataBaseFileName
Versuch es mal mit dem kompletten Pfad.
|
Re: DataBaseFileName
Wird denn der Pfad auch richtig ausgegeben?
|
Re: DataBaseFileName
Ich würde es zunächst mal so versuchen:
Delphi-Quellcode:
const
sDataBaseFileName = 'Daten\Info.abs'; procedure TFormDaten.FormCreate(Sender: TObject); begin ABSDataBase.Close; ABSDatabase.DatabaseFileName := ExtractFilePath(Application.ExeName) + sDataBaseFileName; ShowMessage(ABSDatabase.DatabaseFileName); ABSDataBase.Open; Table1.Open; Table2.Open; Table3.Open; end; |
Re: DataBaseFileName
Oder unter Optionen -> Compiler -> uncheck Optimierung
Dann kannst du deinen Cursor in die Zeile bewegen und F4 drücken, dann dürfte der Compiler bis dahin den Quelltext ausgeführt haben und dann weiter mit F7 zeilenweise testen. Dann kannst du mit der Maus drüber fahren und schauen ob alles die richtigen Werte hat :) Edit: btw, brauch das ganze eigentlich den absoluten oder relativen Pfad? |
Re: DataBaseFileName
@DeddyH,
soweit, sogut danke. ShowMessage(ABSDatabase.DatabaseFileName); bringt die richtige Pfadangabe! Dennoch kommt die Fehlermeldung: Das System kann ... nicht finden. Werden die Tabels nicht geöffnet { }, so kommt es auch nicht zu Fehlermeldungen. Im OI bleibt das Feld für DataBaseFileName leer, als DatabaseName habe ich dort Info ohne .abs eingetragen. Aber auch das sollte richtig sein. Oder? Fritz |
Re: DataBaseFileName
Ich kenne ABS nur vom Namen, aber heißt es wirklich Open und nicht Connect o.ä.?
|
Re: DataBaseFileName
Hallo DeddyH,
habe mir das nochmal bei den ABS Demos angesehen. Table.open / Table.close ist OK und der Eintrag bei databaseName ohne .abs ist auch OK Sollte doch funktionieren! Schaun wir mal ... Fritz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:33 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-2025 by Thomas Breitkreuz