Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Daten aus lokaler Firebird-Datei auslesen? (https://www.delphipraxis.net/108914-daten-aus-lokaler-firebird-datei-auslesen.html)

PeterPanino 21. Feb 2008 03:18

Datenbank: Firebird • Version: ? • Zugriff über: ?

Daten aus lokaler Firebird-Datei auslesen?
 
Hallo, was ist die einfachste Möglichkeit, auf eine lokale einzelne Firebird Datenbank-Datei lesend zuzugreifen und Daten aus den Tabellen auszulesen?

Hansa 21. Feb 2008 03:35

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Zitat:

Zitat von PeterPanino
einfachste Möglichkeit...lokale einzelne Firebird Datenbank-Datei lesend zuzugreifen und Daten aus den Tabellen auszulesen?

Wer soll solch eine Frage beantworten ? :shock: Zeige sie in einem DBGrid an. Das geht ruckzuck, aber nur solange keinerlei weitere Wünsche auftauchen. Also absolut keine Hürde. Ansonsten muss man eben auch mal Quelltexte schreiben. :mrgreen:

mkinzler 21. Feb 2008 16:51

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Nimm die embedded-(Server)-Client-Dll.

PeterPanino 21. Feb 2008 18:25

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Ich kann mittlerweile mit Hilfe von gefundenen Komponenten mit der Datenbank verbinden ("Connect/Disconnect"). Ich weiß aber nicht, wie die Tabellen und die Felder heißen, um darauf zugreifen und Daten auslesen zu können, da die Datenbank nicht von mir stammt. Da ich ein kompletter SQL-Anfänger bin (ich geb's zu), wäre vielleicht ein Tipp in dieser Richtung hilfreich.

Am besten wäre ein Programm, das die Datenbankstrukturen der betreffenden Datenbank ausliest und gleich den Delphi-Quellcode für die Funktionen und Prozeduren erstellt, mit denen man dann komfortabel die Daten auslesen kann. Gibt es so etwas?

mkinzler 21. Feb 2008 18:28

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Die Metadaten kannst du aus den Systemtabellen auslesen. Oder du verwendest ein Admintool wie z.B. IB(O)Console, IBExpert, IBEasy, FlaneRobin, ...

DeddyH 21. Feb 2008 18:29

Re: Daten aus lokaler Firebird-Datei auslesen?
 
IBExpert wollte ich auch gerade vorschlagen.

bluesbear 21. Feb 2008 18:39

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Zitat:

Zitat von PeterPanino
Ich weiß aber nicht, wie die Tabellen und die Felder heißen, um darauf zugreifen und Daten auslesen zu können, da die Datenbank nicht von mir stammt. Da ich ein kompletter SQL-Anfänger bin (ich geb's zu), wäre vielleicht ein Tipp in dieser Richtung hilfreich.
Am besten wäre ein Programm, das die Datenbankstrukturen der betreffenden Datenbank ausliest und gleich den Delphi-Quellcode für die Funktionen und Prozeduren erstellt, mit denen man dann komfortabel die Daten auslesen kann. Gibt es so etwas?

Ich benutze das hier, um an firebird Datenbanken rumzubasteln:
http://sqlmaestro.com/products/firebird/maestro/
Eine Nummer kleiner, aber Freeware:
http://www.flamerobin.org/index.php

Als Komponenten für Delphi nehme ich
http://www.devrace.com/en/fibplus/
Das kostet aber was. Ich finds allerdings optimal für das, was ich vor habe.

PeterPanino 21. Feb 2008 20:36

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Irgendwie habe ich es geschafft, die Metadaten (ich nehme an, das ist die Bezeichnung für die Datenbankstruktur) aus der Datenbank zu extrahieren. Leider kann ich mit dem SQL-Kauderwelsch nichts anfangen. Kann mir jemand einen Hinweis geben, wie ich damit die Daten aus der Tabelle Tasks auslesen kann? Ich habe die Metadaten hier mal angehängt.

mkinzler 21. Feb 2008 20:41

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Du hast die ein Create-Skript exportiert. In einem Admintool kannst du das aber besser darstellen lassen.

PeterPanino 21. Feb 2008 21:21

Re: Daten aus lokaler Firebird-Datei auslesen?
 
Zitat:

Zitat von mkinzler
Du hast die ein Create-Skript exportiert. In einem Admintool kannst du das aber besser darstellen lassen.

Ich habe jetzt mit dem IBExpert (Personal Edition) herumgespielt. Hier habe ich mit der Funktion "Extract Metadata" die Daten der Tabelle 'TASKS' exportiert:

Delphi-Quellcode:
/******************************************************************************/
/*            Generated by IBExpert 2008.02.19 21.02.2008 22:13:00            */
/******************************************************************************/

SET SQL DIALECT 3;

SET NAMES NONE;

CREATE DATABASE 'F:\delphi\EPIM2DSB\DEFAULT.EPIM'
USER 'SYSDBA' PASSWORD 'sysdba'
PAGE_SIZE 2048
DEFAULT CHARACTER SET NONE;



/******************************************************************************/
/*                                   Tables                                  */
/******************************************************************************/



CREATE TABLE TASKS (
    IDTASK      DIDITEM,
    IDPARENT    DIDPARENT,
    STATUS      DSTATUS,
    CREATED     TIMESTAMP,
    LASTCHANGED TIMESTAMP,
    DELETED     TIMESTAMP,
    IDEDITOR    INTEGER,
    TITLE       VARCHAR(200),
    PRIVATE     DPRIVATE,
    STARTTIME   TIMESTAMP,
    ENDTIME     TIMESTAMP,
    TEXT        BLOB SUB_TYPE 1 SEGMENT SIZE 80,
    LOCATION    VARCHAR(80),
    PRIORITY    SMALLINT,
    CATEGORY    INTEGER,
    COMPLETION  SMALLINT,
    EXCLUSIVE   SMALLINT,
    REPEATING   SMALLINT,
    ALLDAY      SMALLINT,
    IDCONTACT   BIGINT,
    IDFIELD     INTEGER,
    PATH        VARCHAR(200)
);




/******************************************************************************/
/*                                Primary Keys                               */
/******************************************************************************/

ALTER TABLE TASKS ADD CONSTRAINT PK_TASKS PRIMARY KEY (IDTASK);


/******************************************************************************/
/*                                  Indices                                  */
/******************************************************************************/

CREATE INDEX TASKS_IDX1 ON TASKS (STARTTIME);
CREATE INDEX TASKS_IDX2 ON TASKS (ENDTIME);
CREATE INDEX TASKS_IDX3 ON TASKS (STATUS);
CREATE INDEX TASKS_IDX4 ON TASKS (PRIVATE);
CREATE INDEX TASKS_IDX5 ON TASKS (IDEDITOR);
Wie kann ich mit diesen Informationen jetzt aber in meinem Programm Daten aus dieser Tabelle auslesen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:22 Uhr.
Seite 1 von 2  1 2      

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