Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Paradox 7 Tabelle dynamisch aus DB erstellen (https://www.delphipraxis.net/34037-paradox-7-tabelle-dynamisch-aus-db-erstellen.html)

Christian18 16. Nov 2004 12:23


Paradox 7 Tabelle dynamisch aus DB erstellen
 
Hallo,

ich möchte gerne aus meiner DB, in der Feldname, Typ und Länge gespeichert sind eine DB dynamisch erstellen. Wie mache ich das??? Ich hab schon einmal was vorbereitet, funktioniert aber leider nicht. es kommt ein Fehler. Fehler: Ungültiger Parameter. Kann mir jemand helfen??? Achso DM ist ein Datanmodul.

Mit freundlichen Grüßen

Christian18

SubData 16. Nov 2004 12:24

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Poste doch mal den Code den du bisher hast :)

MrSpock 16. Nov 2004 12:26

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Schau dir mal Delphi-Referenz durchsuchenCreateTable an. Du erstellst in Paradox in der Regel nur Tabellen. Die DB ist dann das Verzeichnis aller Dateien, die für die Tabellen erzeugt werden.

Christian18 16. Nov 2004 12:32

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Zitat:

Zitat von SubData
Poste doch mal den Code den du bisher hast :)


ok hier ist mein code:

Delphi-Quellcode:
procedure TFFFeld.BitBtn4Click(Sender: TObject);
  var i : Integer;
begin
  // Datenbank Dynamisch erstellen
  DM.Table1.Active:=false;
  DM.Table1.DatabaseName:=ExtractFilePath(Application.ExeName)+'\dynamischeDB';
  DM.Table1.TableName:=DM.TFormulareFormular.AsString;
  DM.Table1.TableType:=ttParadox;

  DM.Table1.FieldDefs.Clear;
  DM.TFelder.First;
  for i:=1 to DM.TFelder.RecordCount do
    begin
      if
        DM.TFelderFeld.AsString='T'
      then
        begin
          DM.Table1.FieldDefs.Add(DM.TFelderFeld.AsString, ftString, DM.TFelderLaenge.AsInteger, false);
          exit;
        end;
      if
        DM.TFelderFeld.AsString='Z'
      then
        begin
          DM.Table1.FieldDefs.Add(DM.TFelderFeld.AsString, ftInteger, DM.TFelderLaenge.AsInteger, false);
          exit;
        end;
      if
        DM.TFelderFeld.AsString='D'
      then
        begin
          DM.Table1.FieldDefs.Add(DM.TFelderFeld.AsString, ftDate, DM.TFelderLaenge.AsInteger, false);
          exit;
        end;

      DM.TFelder.Next;
    end;
  DM.Table1.CreateTable;

  Close;
end;

SubData 16. Nov 2004 12:44

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Delphi-Quellcode:
if
  DM.TFelderFeld.AsString='T'
then
Was ist denn TFelder? auch ne Datenbank?

Müsste das dann nich etwa so aussehen?

Delphi-Quellcode:
if DM.TFelder.FieldByName('FeldName').asString = 'T' then

Christian18 16. Nov 2004 12:49

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Zitat:

Zitat von SubData
Delphi-Quellcode:
if
  DM.TFelderFeld.AsString='T'
then
Was ist denn TFelder? auch ne Datenbank?

Müsste das dann nich etwa so aussehen?

Delphi-Quellcode:
if DM.TFelder.FieldByName('FeldName').asString = 'T' then

so funktioniert es doch auch oder nicht???
Delphi-Quellcode:
if
  DM.TFelderFeld.AsString='T'
then

SubData 16. Nov 2004 12:54

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Also bei mir nicht -g-

Christian18 16. Nov 2004 12:59

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Zitat:

Zitat von SubData
Also bei mir nicht -g-

um noch mal was zu der DB zu sagen. es gibt eine DB die heißt Formulare an dieser DB hängen über einen Index die Felder drann. und jetzt wollte ich anhand dieser Informationen eine Weitere Db erstellen und zwar mit den Informationen die in der ersten und zweiten Db gespeichert sind.

mit freundlichen grüßen

Christian18

SubData 16. Nov 2004 13:02

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Das hab ich schon verstanden allerdings musst du ja dem Programm irgendwie sagen in welcher Spalte er denn schauen soll was das fürn Wert ist. Und den Spalten namen schreibst einfach FieldByName('NAME') rein :)

FieldDefs.Add erzeugt übrigens eine neue Spalte in der Datenbank, NICHT eine neue Zeile ... Dafür musste Delphi-Referenz durchsuchenAppend bzw. Delphi-Referenz durchsuchenAppendRecord verwenden

Christian18 16. Nov 2004 13:17

Re: Paradox 7 Tabelle dynamisch aus DB erstellen
 
Zitat:

Zitat von SubData
Das hab ich schon verstanden allerdings musst du ja dem Programm irgendwie sagen in welcher Spalte er denn schauen soll was das fürn Wert ist. Und den Spalten namen schreibst einfach FieldByName('NAME') rein :)

FieldDefs.Add erzeugt übrigens eine neue Spalte in der Datenbank, NICHT eine neue Zeile ... Dafür musste Delphi-Referenz durchsuchenAppend bzw. Delphi-Referenz durchsuchenAppendRecord verwenden

ich will doch auch eine neue spalte in der DB erzeugen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:29 Uhr.
Seite 1 von 4  1 23     Letzte »    

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