Autor Beitrag
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Mi 19.12.07 13:43 
hallo,

bei der BDE kann man ja als TableType Paradox, dBase, ... einstellen.

Welche Datenbanken gibt es bei Firebird?
Hat Firebird eine eigene Datenbank?
Welche Dateiendung haben die Datenbanken dort?

danke schon mal!
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Mi 19.12.07 13:55 
FireBird ist ein DBMS. Die Endung ist normalerweise fdb, kann aber frei gewählt werden.
Man darf den Begriff Datenbank nicht mit Tabelle verwechseln. Eine datenbank enthält mehrere Tabellen, indices und andere Datenbankobjekte.

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Mi 19.12.07 14:31 
aja, aber bei der BDE (TTable) hat ja jede Tabelle einen eigenen Dateinamen - bei ttParadox mit der Endung .db

ist dann bei Firebird auch jede Tabelle in einer einzelnen Datei gespeichert?

und woher weiß man dann, welche Tabellen usw. zu einer Datenbank gehören?
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Mi 19.12.07 14:47 
Zitat:
ist dann bei Firebird auch jede Tabelle in einer einzelnen Datei gespeichert?
Nein. eine Datenbank kann zwar aus mehreren Dateien bestehen im Normalfall aber eine.

Zitat:
und woher weiß man dann, welche Tabellen usw. zu einer Datenbank gehören?

wenn sie in ihr drin stehen (System-Tabellen)

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Mi 19.12.07 15:00 
user profile iconmkinzler hat folgendes geschrieben:
Zitat:
ist dann bei Firebird auch jede Tabelle in einer einzelnen Datei gespeichert?
Nein. eine Datenbank kann zwar aus mehreren Dateien bestehen im Normalfall aber eine.


Bei Access ist das ja auch so, aber ist das nicht technisch für das DBMS total umständlich...
Wenn zB. eine Tabelle, die am Anfang angefangen wurde dann am Ende der Datei fortgesetzt werden muss und dazwischen ein paar andere Tabellen sind... oder wenn man Felder hinzufügt, oder andere Tabellen hinzufügt!


ich schon mal gespannt was für Eigenschaften und Methoden die Zeos-Komponenten haben. Oder gibt es noch bessere Komponenten für Firebird?
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Mi 19.12.07 15:15 
Zeos sind ja cross-DBMS. Besser sind natürlich Komponenten, die speziell für IB/FB entwickelt wurden:
IBX, IBDAC, FIBPlus, IBObjects, MDO, ...

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 08:51 
Vielen Dank mkinzler, jetzt bin ich wieder schlauer.

Ich weiß nur noch nicht was ich dann also für ein DBMS und für Komponenten nehme.

Ich habe grob gesagt einen statischen Teil des Datenbanksystems, der immer gleich bleibt und einen variierenden Teil, den man wie bei zB. Word Öffnen, Schließen, Neu, Speichern... kann.

Da währe wahrscheinlich Firebird mit einer Datenbankdatei "static.fdb" und einer "varying.fdb" nicht schlecht!
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 08:57 
Zitat:
Ich weiß nur noch nicht was ich dann also für ein DBMS und für Komponenten nehme.
FireBird ist das DBMS.

Warum 2 Datenbanken?

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 09:17 
in der static Datenbank sind eben sachen gespeichert, die immer gelten, also zB. AlleMenschen
und in der varying Datenbank sind die Teilnehmer (eine Teilnmenge aus AlleMenschen) per Primär- und Fremdschlüssel gespeichert.
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 09:18 
Du verwechselst Tabelle und Datenbank.

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 09:25 
user profile iconmkinzler hat folgendes geschrieben:
Du verwechselst Tabelle und Datenbank.


nein, es gibt ja in der static datenbank mehrere Tabellen, die eben immer gelten. und in der varying Datenbank auch. Das mit den Teilnehmern war nur ein Beispiel
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 09:36 
Sollen die Daten an verschiedenen Orten? (z.B. Netz/lokal) sondt wäre ein weiterer Schlüssel besser.

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 09:50 
varying und static sind im gleichen verzeichnis, es is aber im netztwerk freigegeben, so dass die datenbanken von anderen Computern auch genutzt werden können
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 09:53 
Datenbanken sollten nicht in freigebenen Ordner liegen

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 09:55 
aber wie soll ich es denn sonst machen? Es greifen maximal 2 Computer darauf zu.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Do 20.12.07 10:03 
user profile iconJakob Schöttl hat folgendes geschrieben:
aber wie soll ich es denn sonst machen? Es greifen maximal 2 Computer darauf zu.

Ein DBMS unterstützt normalerweise den Zugriff über ein eigenes Netzwerkprotokoll, das auch die Komponenten unterstützen. Du installierst also den Server und greifst über das Netzwerk auf das DBMS zu, das Dir den Zugriff auf die Daten in der Datenbankdatei kapselt. Die Firebird-Datenbank(-Datei) beinhaltet mehrere Tabellen, egal ob diese "statisch" oder "dynamisch" sein sollen. Das spielt ja keine Rolle, da Du jegliche Daten verändern kannst. Wenn Du zwei Datenbanken erstellst, hast Du das Problem, diese beiden unter einen Hut zu bringen, da Du per SQL keine gemeinsamen Daten abfragen kannst.

Beschäftige Dich besser erstmal mit der Datenbanktheorie, denn da scheinst Du noch ein paar Lücken zu haben ;)
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 10:19 
user profile iconUGrohne hat folgendes geschrieben:
Die Firebird-Datenbank(-Datei) beinhaltet mehrere Tabellen, egal ob diese "statisch" oder "dynamisch" sein sollen. Das spielt ja keine Rolle, da Du jegliche Daten verändern kannst. Wenn Du zwei Datenbanken erstellst, hast Du das Problem, diese beiden unter einen Hut zu bringen, da Du per SQL keine gemeinsamen Daten abfragen kannst.

ok, aber das ist auch nicht sinnvoll.

Das ist ein Auswertprogramm für Wettkämpfe im Schützenverein.
Schau, ich habe eine Tabelle wo Alle Schützen vom Verein mit Nr, Name, ... gespeichert sind.
Dann ist jeden Mittwoch ein anderer Wettkampf. Für den Wettkampf brauche ich mehrere Tabellen und auch eine Teilnehmertabelle, weil die Teilnehmer immer andere sind (immer Teilmenge von allen Schützen).
Und dann geht es doch nicht, wenn ich die Datenbank mit den Wettkampfdaten mit den allgemeinen Rahmenbedingungen, die für jeden Wettkampf gelten zusammenlege, weil dann muss ich bei jedem Wettkampf die Rahmenbedingungen auch wieder neu definieren.

Aber das ich dann bei Joins, SQL usw. Probleme kriege verstehe ich natürlich!

user profile iconUGrohne hat folgendes geschrieben:
Beschäftige Dich besser erstmal mit der Datenbanktheorie, denn da scheinst Du noch ein paar Lücken zu haben ;)

ich weiß... weißt du eine internetseite, wo es tutorials zur Theorie gibt? Bei dstd ist ja alles mehr praxisbezogen.
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 10:25 
Zitat:
Dann ist jeden Mittwoch ein anderer Wettkampf.

Dann macht es trotzdem keinen Sinn eine eigene DB zu nehmen.
Erweitere die Tabelle um eine Termin (u.U. eigene Tabelle für Termine)
Zitat:
Für den Wettkampf brauche ich mehrere Tabellen und auch eine Teilnehmertabelle, weil die Teilnehmer immer andere sind (immer Teilmenge von allen Schützen).

Diese n:m Beziehung kann man durch eine Zuordnungstabelle lösen.

_________________
Markus Kinzler.
Jakob Schöttl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Do 20.12.07 10:31 
ALLES in einer Datenbank. Ich glaube das ist nicht nur mir zu uferlos und ich bin mir auch wirklich nicht sicher, ob das Profis so machen würden.

Ich habe für jeden Wettkampf an dynamischen Tabellen schon mal folgende:

Scheiben
Gattungen
Treffer
TrefferWerte
Teilnehmer

und da ist schon die Beziehungen untereinander relativ kompliziert, wenn ich da dann alles zusammenlegen würde, würde ich nicht mehr klarkommen!

Aber wenn jemand ein Tutorial zu Datenbanktheorie hat wäre es sehr gut!
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 20.12.07 10:40 
Zitat:
ALLES in einer Datenbank. Ich glaube das ist nicht nur mir zu uferlos
Warum soll das uferlos sein.
Zitat:
Ich glaube das ist nicht nur mir zu uferlos und ich bin mir auch wirklich nicht sicher, ob das Profis so machen würden.
Doch die würden das so machen.
Zum Thema komplex, hast du dir mal ne Datenbank eines richtigen Programmes mal angesehen?

_________________
Markus Kinzler.