Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Array in Interbase/Firebird (https://www.delphipraxis.net/87109-array-interbase-firebird.html)

smudo 23. Feb 2007 11:40

Datenbank: Interbase/Firebird • Version: 6.2/2.0 • Zugriff über: UIB

Array in Interbase/Firebird
 
Ich will mal die Frage in die Runde werfen, ob jemand schon mal Erfahrungen mit Arrays in einer Interbase- oder Firebirddatenbank gesammelt hat?

Wie erstellt man diese?
Wie befüllt man sie?
Wofür sind sie sinnvoll?
Wie performant sind sie?

Vielleicht interessiert sich ja jemand dafür oder nutzt diese Technik.

Grüße

René

smudo 26. Feb 2007 08:34

Re: Array in Interbase/Firebird
 
Push... :mrgreen:
Wichtig ist das Thema wahrscheinlich nicht.
Ich fands nur mal interessant - bin ich da der einzige?

shmia 26. Feb 2007 09:32

Re: Array in Interbase/Firebird
 
Den Datentyp Array gibt es innerhalb von relationalen Datenbanken nicht.
Arrays werden auf Tabellen abgebildet.
Angenommen du willst eine DB für eine Bücherei erstellen.
Du hast eine Tabelle Buch und plötzlich fällt dir ein:
"ein Buch kann ja mehrere Autoren haben. Also brauch ich ein Array"
Falsch, das gedankliche Array wird über 3 Tabellen abgebildet:
Tabelle Buch
Tabelle Author
Tabelle BuchAuthor (N:M Verknüpfung für Buch <-> Author)

mkinzler 26. Feb 2007 09:41

Re: Array in Interbase/Firebird
 
Zitat:

Zitat von shmia
Den Datentyp Array gibt es innerhalb von relationalen Datenbanken nicht.
Arrays werden auf Tabellen abgebildet.
Angenommen du willst eine DB für eine Bücherei erstellen.
Du hast eine Tabelle Buch und plötzlich fällt dir ein:
"ein Buch kann ja mehrere Autoren haben. Also brauch ich ein Array"
Falsch, das gedankliche Array wird über 3 Tabellen abgebildet:
Tabelle Buch
Tabelle Author
Tabelle BuchAuthor (N:M Verknüpfung für Buch <-> Author)

kommt auf das DBMS an. Fb unterstützt Array inerhalb eines Feldes
http://www.ibexpert.info/documentati...Array/443.html

hoika 26. Feb 2007 09:51

Re: Array in Interbase/Firebird
 
Hallo,

im Netz hatte ich mal was gefunden zur Nutzung.
da ging es um Daten einer Start-Landbahn (Koordinaten der Landung)
Durch arrays mit Interbase wurde der Lade-/Berechnungsvorgang
erheblich beschleunigt.

Ich denke, das viell. damals (zu IB-Zeiten ;) )
mal nen Wunsch eines grossen Kunden,
wurde eingebaut und fertsch.

Ich persönlich nutze das nicht
(habe mehr als x Dimensionen, und Kompatbilität zu anderen DBMS nicht gewährleistet)


Heiko

smudo 1. Mär 2007 10:48

Re: Array in Interbase/Firebird
 
Hallo und Danke.

Hab ich doch ganz verpasst, dass sich doch noch jemand für das Thema interessiert hat.
So wie shmia das geschildert hat, ist natürlich der normale Fall - hier hat ein Array auch keinen Sinn, da es in IB/FB um statische Arrays geht.
Das Beispiel von hoika leuchtet mir da schon eher ein - ich finde interessant, dass sich die Performance dadurch verbessern lässt.

Leider hab ich auch in der Hilfe nicht gefunden, wie man Arrays befüllt (insert und update)

mkinzler 1. Mär 2007 10:57

Re: Array in Interbase/Firebird
 
SQL-Code:
insert into (...,<feld>[1]...) values ...;


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:09 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