TurboBird

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
maurog
Beiträge: 36
Registriert: So 26. Mär 2023, 14:01

TurboBird

Beitrag von maurog »

Hallo zusammen,

ich habe kürzlich etwas an TurboBird gearbeitet. Das Ergebnis findet ihr hier auf GitHub:
https://github.com/mdadali/TurboBird

Eine ausführlichere Beschreibung gibt es im Lazarus-Forum:
https://forum.lazarus.freepascal.org/in ... 389.0.html

Grüße
Maurog.
Und ja, Lazarus ist definitiv ein Biest – es bringt alles mit, was man braucht, aber manchmal eben auch mehr, als man erwartet. 😅 (Chat-GPT)

Mathias
Beiträge: 7165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: TurboBird

Beitrag von Mathias »

Eine ausführlichere Beschreibung gibt es im Lazarus-Forum:
https://forum.lazarus.freepascal.org/in ... 389.0.html
Dein Link ist falsch, da hat es ein paar Zeichen durch ... ausgetauscht.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

maurog
Beiträge: 36
Registriert: So 26. Mär 2023, 14:01

Re: TurboBird

Beitrag von maurog »

Enschuldigung.

https://forum.lazarus.freepascal.org/in ... 389.0.html


Neue und verbesserte Funktionen
✅ Dynamische Firebird-Datentypbehandlung
Alle Firebird-Datentypen werden nun zur Laufzeit dynamisch geladen, was TurboBird weitgehend versionsunabhängig macht.

✅ Paketunterstützung
Man kann jetzt Firebird-Pakete direkt in TurboBird erstellen und bearbeiten.

✅ UDR-Unterstützung (User Defined Routines)
TurboBird kann nun benutzerdefinierte Routinen (UDRs) erstellen, bearbeiten und ausführen – einschließlich Parameter und Rückgabewerte.

✅ Einheitlicher Routine-Runner
Ein einziger Runner unterstützt jetzt:

UDFs
UDRs
Stored Procedures
Functions

✅ Firebird-Serverkonfiguration
Firebird-Servereinstellungen können jetzt direkt in TurboBird konfiguriert werden – das vereinfacht die Verwaltung ohne zusätzliche Tools.

⚠️ Bekannte Einschränkungen
Die Darstellung von Datentypen ist noch nicht perfekt – insbesondere Firebird-Arrays werden derzeit nicht unterstützt.

Es gibt eine Komponente im Ordner "classes" namens:
TArrayQuery = class(TSQLQuery)
die mit Arrays umgehen kann.

Um vollständige Unterstützung zu gewährleisten, müssten alle Instanzen von TSQLQuery im Projekt durch TArrayQuery ersetzt werden – dafür fehlt mir momentan leider die Zeit.

⚠️ Lizenzhinweis
Die Originalversion von TurboBird wurde unter
GPL für die GUI und LGPL für die Units (Quelltext) veröffentlicht.

Ich habe versucht, den ursprünglichen Autor zu kontaktieren, aber leider ohne Erfolg.
Ich gehe davon aus, dass die Weiterentwicklung unter der bestehenden Open-Source-Lizenz im Sinne des Projekts ist.

🧪 Experimenteller Status
Diese Version ist nicht produktionsreif – aber ideal für Tests, Evaluation und Rückmeldungen aus der Community.

💾 Quellcode
📦 GitHub-Repository (Open Source):
🔗 https://github.com/mdadali/TurboBird

🛠️ Derzeit keine vorkompilierten Binaries – bitte aus dem Quellcode kompilieren.
Und ja, Lazarus ist definitiv ein Biest – es bringt alles mit, was man braucht, aber manchmal eben auch mehr, als man erwartet. 😅 (Chat-GPT)

maurog
Beiträge: 36
Registriert: So 26. Mär 2023, 14:01

Re: TurboBird

Beitrag von maurog »

Hallo,

Der Quellcode sowie die Binarys für Linux und Windows sind jetzt auf GitHub verfügbar:
https://github.com/mdadali/TurboBird/re ... 1.2.1.1124

Da SQLDb derzeit die neuen Firebird-Datentypen wie TIMESTAMP WITH TIME ZONE und Arrays nicht unterstützt, habe ich eine einfache Komponente namens TSQLQueryExt erstellt (zu finden im Verzeichnis components).

Diese Komponente:
wandelt unbekannte Datentypen wie TIMESTAMP WITH TIME ZONE automatisch in VARCHAR um,
analysiert Array-Felder und stellt Zusatzinformationen für das DBGrid bereit,
verhindert dadurch Exceptions wie „FieldType unknown“ und sorgt für reibungslose Darstellung.

Hinweis: Damit das funktioniert, muss die Komponente in Lazarus installiert werden (über das Komponenten-Paket im components-Ordner).

Viele Grüße,
Maurog.
Und ja, Lazarus ist definitiv ein Biest – es bringt alles mit, was man braucht, aber manchmal eben auch mehr, als man erwartet. 😅 (Chat-GPT)

Andy Nightingale
Beiträge: 321
Registriert: Mo 13. Jan 2025, 12:11

Re: TurboBird

Beitrag von Andy Nightingale »

maurog hat geschrieben: So 6. Jul 2025, 11:43 Hallo zusammen,

ich habe kürzlich etwas an TurboBird gearbeitet. Das Ergebnis findet ihr hier auf GitHub:
https://github.com/mdadali/TurboBird

Eine ausführlichere Beschreibung gibt es im Lazarus-Forum:
https://forum.lazarus.freepascal.org/in ... 389.0.html

Grüße
Maurog.
Hallo Maurog,

möchte einiges in Firebird machen aber in deinem Tool zeigt es bei mir keine Hilfe Dateien an. Kann man das Tool auf deutsch umstellen? Grüße Andy
Hilfe.jpg
Hilfe.jpg (25.52 KiB) 699 mal betrachtet

maurog
Beiträge: 36
Registriert: So 26. Mär 2023, 14:01

Re: TurboBird

Beitrag von maurog »

Hallo Andy,

vielen Dank für deine Anfrage.
TurboBird ist derzeit leider nur auf Englisch verfügbar, und die Hilfe ist ebenfalls noch nicht verfügbar.

Alleine schaffe ich es leider nicht, das gesamte Paket zu dokumentieren, da ich die begrenzte Zeit, die ich habe, hauptsächlich fürs Programmieren nutze.

Du kannst aber gerne das deutsche Firebird-Forum besuchen, dort findest du viele nützliche Hinweise:
https://www.firebirdforum.de/viewtopic. ... 7&start=90

Und wenn du konkrete Fragen hast, kannst du sie auch gerne hier stellen.

Viele Grüße
Maurog
Und ja, Lazarus ist definitiv ein Biest – es bringt alles mit, was man braucht, aber manchmal eben auch mehr, als man erwartet. 😅 (Chat-GPT)

Andy Nightingale
Beiträge: 321
Registriert: Mo 13. Jan 2025, 12:11

Re: TurboBird

Beitrag von Andy Nightingale »

maurog hat geschrieben: Mi 7. Jan 2026, 17:12
Und wenn du konkrete Fragen hast, kannst du sie auch gerne hier stellen.

Viele Grüße
Maurog
Hallo Maurog,

danke für die Info.-eine Frage:- Kann man damit auch Daten importieren?
Grüße

maurog
Beiträge: 36
Registriert: So 26. Mär 2023, 14:01

Re: TurboBird

Beitrag von maurog »

Hallo Andy,

mit der nächsten Version (TurboBird_v1.2.1.1264) wird es eine Importfunktion geben, mit der eine CSV-Datei in eine vorhandene Tabelle eingelesen werden kann. Diese Funktion ist bereits implementiert.

In der darauffolgenden Version werde ich höchstwahrscheinlich DBReader
(https://github.com/serbod/DBReader) in TurboBird integrieren.

Grüße.
Und ja, Lazarus ist definitiv ein Biest – es bringt alles mit, was man braucht, aber manchmal eben auch mehr, als man erwartet. 😅 (Chat-GPT)

Antworten