Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Habe richtig Probleme mit meiner Datenbank... (https://www.delphipraxis.net/62475-habe-richtig-probleme-mit-meiner-datenbank.html)

SteffenG 5. Feb 2006 11:25

Datenbank: Paradox • Version: 7 • Zugriff über: TTable

Habe richtig Probleme mit meiner Datenbank...
 
Hallo,

ich habe im Moment irgendwelche unerklärbaren Probleme mit meiner Datenbank. Ich will einfach nur einen Information auslesen. Hier erstmal der Quelltext:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var info: String;
begin
  table1.first;
  info := table1.FieldByName('spalteeins').AsString;
  Edit1.Text := info;
end;
So wie er da steht, geht der Quelltext.
Sobald ich aber den String 'spalteeins' durch eine Variable(String) ersetze, findet er diese Spalte nicht mehr, obwohl in dem String genau die gleiche Information steht.

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var info: String;
begin
  table1.first;
  info := table1.FieldByName(datei).AsString;
  Edit1.Text := info;
end;
Ich habe wirklich kein Plan, was ich noch machen kann. Hier nochmal der Quelltext, wo die Variable datei der Wert zugewiesen wird, vielleicht hilft es ja weiter:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  temp := TStringList.Create;
  temp.LoadFromFile('temp.txt');
  datei := temp.GetText;
end;

Die Muhkuh 5. Feb 2006 11:26

Re: Habe richtig Probleme mit meiner Datenbank...
 
Schon mal geguckt, was in datei drinne steht?

SteffenG 5. Feb 2006 11:31

Re: Habe richtig Probleme mit meiner Datenbank...
 
Zitat:

Zitat von Spider
Schon mal geguckt, was in datei drinne steht?

Jap, genau das was drinnen stehen soll!
Wenn ich es aber in ein edit.text kopieren lasse, steht da 'spalteeins||' Im Panel, Label, ShowMessage oder so werden diese 2 Striche nicht angezeigt.

Jetzt wo ich nochmal darüber nachdenke, muss ja irgendetwas beim auslesen der .txt falsch laufen... aber ich habe kein Plan was... In der .txt steht erst spalteeins, und darunter ist noch ne leere Zeile! Kann das damit was zu tun haben?

Ich sitze mittlerweile schon seit Gestern Abend an diesem Problem.

mkinzler 5. Feb 2006 11:32

Re: Habe richtig Probleme mit meiner Datenbank...
 
Dann stegt da zu viel drinn! 'spalteeins' != 'spalteeins||'. Nimm mal nur die 1.Zeile der Stringliste.

SteffenG 5. Feb 2006 11:42

Re: Habe richtig Probleme mit meiner Datenbank...
 
Zitat:

Zitat von mkinzler
Dann stegt da zu viel drinn! 'spalteeins' != 'spalteeins||'. Nimm mal nur die 1.Zeile der Stringliste.

Ich habe das jetzt geändert, jetzt steht in der Variablen datei wirklich nur noch 'spalteeins':

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  temp := TStringList.Create;
  temp.LoadFromFile('temp.mmr');
  datei := temp.CommaText;
end;
Trotzdem hat es nichts gebracht: "Table1: Feld 'spalteeins' nicht gefunden."

Ich verstehe langsam echt nicht mehr, warum das nicht geht...

marabu 5. Feb 2006 11:45

Re: Habe richtig Probleme mit meiner Datenbank...
 
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  datei := '';
  temp := TStringList.Create;
  try
    temp.LoadFromFile('temp.mmr');
    datei := temp[0];
  finally
    temp.Free;
  end;
end;
marabu

r_kerber 5. Feb 2006 11:50

Re: Habe richtig Probleme mit meiner Datenbank...
 
Was steht denn in temp.mmr? Und hast Du Dir auch mal angesehen, was TStingList.CommaText tatsächlich macht?
In der OH steht
Die Eigenschaft CommaText bietet beim Schreiben oder Lesen die Möglichkeit, sämtliche Listeneinträge eines Objekts von TStrings wie einen einzigen, durch Kommas getrennten String zu behandeln.

SteffenG 5. Feb 2006 11:54

Re: Habe richtig Probleme mit meiner Datenbank...
 
Zitat:

Zitat von marabu
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  datei := '';
  temp := TStringList.Create;
  try
    temp.LoadFromFile('temp.mmr');
    datei := temp[0];
  finally
    temp.Free;
  end;
end;
marabu

Bringt immer noch nichts. Ich sage ja, eigentlich kann es garnicht sein, dass es nicht geht... Wenn ich überlege, was ich schon alles ausprobiert habe...

Ich bin echt langsam am verzweifeln...
Hier nochmal der Quelltext, wo die datei temp.txt beschrieben wird.

Delphi-Quellcode:
procedure neufenster(artv, art: String; data: TStringList);
var datei: String;
begin
  datei := ExtractFilePath(Application.Exename);
  data := TStringList.Create;
  data.Clear;
  data.add(artv);
  data.SaveToFile(datei+'temp.mmr');
  ShellExecute(Application.Handle, 'open', PChar('"' + datei+'\data\system\'+art+'\Project1.exe' + '"'), nil, nil, SW_NORMAL);
end;
@r_kerber

Hmmm, aber dadurch bin ich diese 2 seltsamen Striche losgeworden.
Baer ich habe jetzt ja auch schon das von 'marabu' ausprobiert, aber das funktioniert ja auch net...

mkinzler 5. Feb 2006 12:04

Re: Habe richtig Probleme mit meiner Datenbank...
 
Was wurde als artv an Procedur NeuFenster übergeben?

Wenn beim Auslesen wirklich 'spalteeins' steht sollte es eigentlich funktioneiern. Post mal die Datei temp.mnr

SteffenG 5. Feb 2006 12:37

Re: Habe richtig Probleme mit meiner Datenbank...
 
Zitat:

Zitat von mkinzler
Was wurde als artv an Procedur NeuFenster übergeben?

Wenn beim Auslesen wirklich 'spalteeins' steht sollte es eigentlich funktioneiern. Post mal die Datei temp.mnr

artv wird der String 'spalteeins' übergeben. 'spalteeins' kommt wiederrum aus einer anderen Datenbank.
In der Datei Temp.mmr steht wirklich nur spalteeins und dann halt als ob man einmal Enter gedrückt hätte(wahrscheinlich wegen data.add)

es stimmt ja alles überein, nur nimmt Table 1 nur einen String an. Sobald ich da eine Variable einsetze geht es halt nicht mehr.
Was mir jetzt wieder aufgefallen ist, dass wenn ich datei vorher nochmal 'spalteeins' zuweise, dass es dann geht:
Aber das löst ja mein Problem nicht, weil sich datei ja ändern muss und aus temp.mmr ausgelesen werden soll.

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var info: String;
begin
  datei := 'spalteeins';
  table1.first;
  info := table1.FieldByName(datei).AsString;
  Edit1.Text := info;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:19 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz