Hi
Ich habe die Frage schon in einem Delphi Forum gestellt, aber bisher 
keine Antwort erhalten. Es geht um die Möglichkeit, wie sie in Delphi 
vorhanden war:
   aus einer TTABLE abgeleitete Komponente
Tabelle: TTable;
mittels
   Tabelle:=TTable.Create;
   Tabelle.Database:=....
     und weitere Parameter
sowie Felddeklaration
   Tabelle.FieldDefs.Add('Ident',ftInteger,0,true);
   ....
   ....
   Tabelle.TableCreate;
eine Tabelle auf einer Datenbank zu erzeugen. Die Komponenten von 
Lazarus wehren sich ein wenig und mir gehen die Ideen aus. Kann mir mal 
einer das Brett vom Kopf nehmen.
Gruß oldmax
  Hi
>Es geht um die Möglichkeit, wie sie in Delphi vorhanden war:
In der Delphi-Hilfe steht es so:
var
  TableFound: Boolean;
begin
  with TTable.Create(nil) do// temporäre TTable-Komponente erstellen
  begin
    try
      { Eigenschaften für die temporäre TTable-Komponente festlegen }
      Active := False;
      DatabaseName := 'DBDEMOS';
      TableName := Edit1.Text;
      TableType := ttDefault;
      { Felder für die neue Tabelle definieren }
      FieldDefs.Clear;
      with FieldDefs.AddFieldDef do begin
        Name := 'First';
        DataType := ftString;
        Size := 20;
        Required := False;
      end;
      with FieldDefs.AddFieldDef do begin
        Name := 'Second';
        DataType := ftString;
        Size := 30;
        Required := False;
      end;
      { Indizes für die neue Tabelle definieren }
      IndexDefs.Clear;
      with IndexDefs.AddIndexDef do begin
        Name := '';
        Fields := 'First';
        Options := [ixPrimary];
      end;
      TableFound := Exists; // prüfen, ob die Tabelle bereits vorhanden 
ist
      if TableFound then
        if MessageDlg('Vorhandene Tabelle ' + Edit1.Text + 
'überschreiben?',
             mtConfirmation, mbYesNoCancel, 0) = mrYes then
          TableFound := False;
      if not TableFound then
        CreateTable; // Tabelle erstellen
    finally
      Free; // temporäre TTable-Komponente abschließend löschen
    end;
  end;
end;
MfG Spess
  Hi Danke für die Antwort, aber Delphi ist nicht das Problem. Lazarus, zumindest, das was ich mir hier heruntergeladen habe, kennt keine TTable. Daher funktioniert das bei Lazarus in dieser Art nicht. Also, das Brett ist noch zu haben... Gruß oldmax
Hi Danke für den Link. Dieses Tutorial hatte ich noch nicht gefunden, aber die Vorgehensweise mit TDbf bereits versucht. Bisher scheiterte es immer zur Laufzeit mit einer Fehlermeldung "unable to open... " zur Laufzeit beim Aufruf von CreateTable. Die Compileierung lief fehlerfrei. Ein Breakpoint in der Procedure CreateTable wurde gar nicht angesprochen, daher hatte ich vermutet, das eine Tabelle vorhanden sein muß. Aber gut, ich werde mich heute nachmittag gleich mal dransetzen und nochmal die entsprechenden Codes prüfen. Danke für deine Mühe. Gruß oldmax
Hi Kein Problem. Wie sind denn deine Erfahrungen mit Lazerus? Im Moment benutze ich Delphi6 prof. Lohnt sich ein Einstieg/Umstieg? MfG Spess
Hi Wenn du Delphi benutzt, denke ich bleib dabei. Ich habe mir das auch nur angetan, weil ich eine freie Software gesucht habe, die Datenbankzugriff beinhaltet. Dies ist bei den preiswerten Delphi's nicht der Fall. Ich arbeite immer noch mit einer D3 Enterprise, die ich von einem Programmierer geerbt habe. Da ist man schon verwöhnt in Bezug auf Hilfe und Dokumentation. Z.B. ist es unter Delphi kein Problem, in der Hilfe bei den Objekten auch in die Vorfahren zu gehen und die Herkunft abgeleiteter Variablen anzusehen. Das wirst du bei Lazarus vermissen. Auch ist Lazarus etwas langsamer. Sowohl beim Compilieren als auch in der Ausführung. Andererseits darf man nicht vergessen, es kostet nix und dafür ist es ein sehr interesantes und umfangreiches Programmiertool. Ich merke allerdings sehr schnell meine Grenzen, da ich das Programmieren nicht durch ein Studiom gefestigt habe, sondern eher zum Freizeitverplempern mache.... Sicherlich, als E-Techniker hat es mir bei vielen Aufgaben geholfen und es hält geistig fit. Schließlich bin ich nicht mehr der Jüngste, aber irgendwas uß man ja machen, wenn man in Kürze in Rente geht.. :) Gruß oldmax
Hi Danke erstmal für die Information. Übrigens findest du in der Zeitschrift 'Toolbox' öfters mal etwas zu Lazerus. MfG Spess
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
  
  Bestehender Account
  
  
  
  Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
  Noch kein Account? Hier anmelden.