AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TIBTable

Ein Thema von RaGro · begonnen am 20. Jul 2019 · letzter Beitrag vom 25. Jul 2019
Antwort Antwort
RaGro

Registriert seit: 10. Aug 2008
Ort: Griesheim
15 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#1

TIBTable

  Alt 20. Jul 2019, 10:31
Datenbank: Interbase • Version: Developer Edition • Zugriff über: Interbase
Hallo,

ich habe ein Problem mit Interbase und TIBTable. Ich habe immer mit der BDE gearbeitet und bin in Interbase Anfänger!

Ich wollte eine Datenbank erstellen zur Entwurfszeit als TIBTable. Ich habe die Datenbank mit der IBConsole erstellt. Habe dann über die Komponentenproperties die Felder festgelegt.
Wollte dann mit create Table zur Entwurfszeit die Tabelle erstellen.
Ich habe keine Möglichkeit gefunden dies zu tun
Nun da alle Felder bereits angezeigt wurden wollte ich dann mit einer kleinen Dummyunit eben zur Laufzeit die Tabelle erstellen.

Bekomme zur Laufzeit jedoch immer die Meldung: Error nicht unterstützter Datentyp.

System:
Win10 64 Bit
Tokyo 10.2
Interbase Developer 64 Bit

Hier einmal die Dummyunit. Die Deklarationen sind bereits über die Komponenten da. Wahrscheinlich werde ich einige Komponenten zu viel drin haben.
Anfänger eben

Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DBXInterBase, Data.FMTBcd, Data.DB,
  Datasnap.DBClient, Datasnap.Provider, Data.SqlExpr, Vcl.StdCtrls, Vcl.ToolWin,
  Vcl.ComCtrls, IBX.IBCustomDataSet, IBX.IBDatabase, IBX.IBTable,
  IBX.IBConnectionBroker, Vcl.Grids, Vcl.DBGrids;

type
  TForm1 = class(TForm)
    Button1: TButton;
    StatusBar1: TStatusBar;
    ToolBar1: TToolBar;
    IBDataSet1: TIBDataSet;
    DataSource1: TDataSource;
    IBDataSet1Nummer: TAutoIncField;
    IBDataSet1Bild: TStringField;
    IBTransaction1: TIBTransaction;
    IBDataSet1Memo: TMemoField;
    IBDataSet1Name: TMemoField;
    N: TMemoField;
    IBDataSet1Eigenschaft: TMemoField;
    IBDataSet1Körper: TMemoField;
    IBDataSet1Zeit: TMemoField;
    IBDataSet1Person: TMemoField;
    IBDataSet1Karma: TMemoField;
    IBDatabase1: TIBDatabase;
    DBGrid1: TDBGrid;
    IBTable1: TIBTable;
    IBTable1Nummer: TAutoIncField;
    IBTable1Bild: TStringField;
    IBTable1Memo: TMemoField;
    IBTable1Name: TMemoField;
    IBTable1Schlüssel: TMemoField;
    IBTable1Eigenschaft: TMemoField;
    IBTable1Körper: TMemoField;
    IBTable1Zeit: TMemoField;
    IBTable1Person: TMemoField;
    IBTable1Karma: TMemoField;
    procedure Button1Click(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

 begin
    Button1.Caption:='DB 123';
    IBTable1.CreateTable;


    Button1.Caption:='DB erstellen';
end;
end.
Rainer Groer
Rainer Groer

Geändert von mkinzler (20. Jul 2019 um 10:35 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.400 Beiträge
 
Delphi 7 Professional
 
#2

AW: TIBTable

  Alt 20. Jul 2019, 10:50
Kenne Interbase nicht wirklich (ist seeeeeeehhhhhhr lange her).

FireBird ist aber aus Interbase entstanden.

FireBird kennt kein TAutoIncField, da muss man mit 'nem Generator (Sequence) arbeiten.

Schau bitte mal, ob Dir einer der Artikel hier weiterhilft: https://www.google.com/search?q=interbase+autoinc

Geändert von Delphi.Narium (20. Jul 2019 um 10:51 Uhr) Grund: Immer diese Schreibfehler :-(
  Mit Zitat antworten Zitat
RaGro

Registriert seit: 10. Aug 2008
Ort: Griesheim
15 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#3

AW: TIBTable

  Alt 20. Jul 2019, 11:01
Hi Delphi.Narium,

Danke erst mal für deine Antwort!
Das Problem ist also das Autoinc Feld wenn ich das richtig verstehe ((
Ok. Das Hat mir schon mal ein ganzes Stück weiter geholfen!!!
Rainer Groer
Rainer Groer
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.275 Beiträge
 
Delphi 12 Athens
 
#4

AW: TIBTable

  Alt 20. Jul 2019, 11:46
Moin...
Zitat:
Ich habe immer mit der BDE gearbeitet
...davon (nämlich die Vorgehensweisen) solltest du dich komplett verabschieden. Alles auf die Form klatschen hilft nicht viel. Ich würde vorschlagen, daß du wieder einem leeren Projekt anfängst.

0. Datenbank und die Tabellen mit IBConsole oder IBExpert oder FlameRobin erstellen.
Hinweis: Wie Delphi.Narium sagte... "kennt kein TAutoIncField, da muss man mit 'nem Generator (Sequence) arbeiten" https://www.youtube.com/watch?time_c...&v=81imsDWYTs4
Hinweis: die Datenbank ist ein File...incl. der Tabellen. Nicht wie mit der BDE (Paradox)
Hinweis: nur im Notfall sollte die Datenbank zur Laufzeit geändert werden...und wenn nur von einer Workstation! (Updater)
1. leeres Projekt (uses IBxxx leer!)
2. visuelle Komponenten drauf
3. Query als Komponente drauf (keine Table sondern Query! Table verwendet keiner mehr...)
4. Connection als Komponente drauf, Grundeinstellungen behalten (zur Designzeit niemals Active = True setzen!)
5. Datasource als Komponente drauf
6. Grid: alternativ Spalten erstellen // sonst werden beim Laden der Daten alle Spalten angezeigt
7. INI erstellen mit den "Connection Daten" - Alternativ hardcoded in die Connection eintragen (= bäääh )
8. Form Create: INI laden und den Connection String der Connection zuordnen und Active = True setzen
9. Starten.
10. Button Click: SQL erstellen, der Query übergeben und ausführen. (select * from Blubb)

SQL Tutorial: https://www.1keydata.com/de/sql/
Normalisierung (für den Anfang nicht wichtig, sollte man aber mal gehört haben ): https://de.wikipedia.org/wiki/Normal...ng_(Datenbank)

Wenn das funktioniert, dann kannst du rumprobieren...und wir haben dann die nächsten Fragen am Hals.

Geändert von haentschman (20. Jul 2019 um 12:15 Uhr)
  Mit Zitat antworten Zitat
RaGro

Registriert seit: 10. Aug 2008
Ort: Griesheim
15 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#5

AW: TIBTable

  Alt 25. Jul 2019, 13:49
Hallo Haentschmann,

Danke für deine Antwort.
Hab inzwischen meine beiden Paradoxtabellen in Interbase portiert und neu geschrieben bzw. schreiben lassen von ner dummy datei .
Das "alte" Programm war nach einigen wenigen Änderungen mit der Interbasedatenbank wieder lauffähig.
Mit dem SQL von Interbase bin ich noch etwas am kämpfen....aber das wird schon.

Die Datenbanken laufen erst mal.


Vielen Dank für eure Hilfe und Unterstützung

mfg

Rainer Groer
Rainer Groer
Rainer Groer
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:44 Uhr.
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