AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Firebird-DB -> Tabellen nach CSV exportieren
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird-DB -> Tabellen nach CSV exportieren

Ein Thema von bernau · begonnen am 24. Jul 2013 · letzter Beitrag vom 25. Jul 2013
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#1

Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 10:06
Datenbank: firebird • Version: alle • Zugriff über: egal
Ich suche ein Tool, mit dem ich alle Tabellen einer DB in einem Rutsch in CSV-Daten exportieren kann. Jede Tabelle soll in eine eigene CSV-Datei exportiert werden. Soll ohne viel Aufwand geschehen. Ich möchte also nicht jede Tabelle einzeln per Hand exportieren, sondern alle auf einmal. Habe mir gedacht, bevor ich es selber schreibe, frage ich mal nach.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 10:59
http://www.delphipraxis.net/103662-e...csv-datei.html
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 13:01
Danke. Schade, ich dachte es gibt schon etwas fertiges.

Aber OK. So viel Arbeit ist es nicht das selber zu schreiben.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 15:09
ich dachte es gibt schon etwas fertiges.
Was ist schon fertig ? Prinzipiell brauchst Du doch nur über die einzelnen Tabellen zu wandern. Das geht so : Dataset anlegen und auf die Systemtabelle der Table-Names zugreifen. Also z.B.:

Delphi-Quellcode:
  while not DbDS.Eof do begin
    TableName := DbDS.FieldByName ('RDB$RELATION_NAME').AsString;
// hier Daten den Tablename an weiteres Dataset zuweisen und Daten exportieren
    DetailDS.Close;
    DetailDS.SelectSQL.Text := 'select count (*) AS ANZAHL from ' + TableName;
    DetailDS.Open;
    Anzahl := DetailDS.FieldByName ('ANZAHL').AsString;
    DbDS.Next;
  end;
Müsste doch eigentlich so gehen.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
646 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 16:24
solltest du ein IBExpert als Vollversion haben, dann geht das mit folgendem Code
im SQL Editor (D:\t\ ist hier nur standardpfad, den am besten anpassen).

Code:
execute ibeblock
as
begin
    for
    select trim(rdb$relations.rdb$relation_name)
    from rdb$relations
    where rdb$relations.rdb$relation_name not containing '$'
    into :tn
    do
    begin
      script='execute ibeblock
              as
              begin
                select * from '||:tn||' order by id as dataset MyDataset;
                ibec_ds_Export(MyDataset,__etCSV,''D:\t\'||:tn||'.csv'',''QuoteChar'');
                close dataset MyDataset;
              end';
      ibec_ExecSQLScript(ibec_GetDefaultConnection, script,'',nil);
    end
end
liesse sich mit ibescript.exe auch per Kommandozeile machen

Wichtig: Blobs lässt der weg, die machen im csv aber auch keinen sinn
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 24. Jul 2013, 16:31
ich dachte es gibt schon etwas fertiges.
Was ist schon fertig ?
Ja, ja. Aber wozu sind wir Programmierer. Machen wir es halt eben selber. So viel Arbeit ist es wirklich nicht.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 25. Jul 2013, 01:36
ich dachte es gibt schon etwas fertiges.
Was ist schon fertig ? Prinzipiell brauchst Du doch nur über die einzelnen Tabellen zu wandern. Das geht so : Dataset anlegen und auf die Systemtabelle der Table-Names zugreifen. Also z.B.:
Müsste doch eigentlich so gehen.
Geht noch einfacher: Meiner Erfahrung nach verfügen alle DB-Connect-Komponenten über die Methode GetTableNames, die gewöhnlich eine Stringliste als Parameter erwarten und ein Boolean, der angibt, ob auch Systemtabellen übergeben werden sollen. Das ist dann mit einer Zeile Code erledigt:
Delphi-Quellcode:
IbConMain.GetTableNames(ListBox1.Items,False,False); // für IbDac von DevArt
FIBCon.GetTableNames(ListBox1.Items,False); // für FibPlus von Devrace
DatMod.ZeosCon.GetTableNames('',ListBox1.Items); // für Zeos
// usw.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 25. Jul 2013, 01:44
das CONTAINING $ muss noch erwähnt werden. Da muss man aufpasen. Würde mal sagen, dass wäre wichtig, damit die Systemtabellen ausgeblendet werden.
Gruß
Hansa
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 25. Jul 2013, 01:47
das CONTAINING $ muss noch erwähnt werden. Da muss man aufpasen. Würde mal sagen, dass wäre wichtig, damit die Systemtabellen ausgeblendet werden.
Du meinst vermutlich bei der Zeos-Komponente? Meistens wird ja ein Boolean verwendet, um die Systemtabellen auszublenden, bei Zeos wird ein String-Pattern verlangt à la LIKE, wie ich gerade anderswo gelesen hatte. Wie man bei Zeos die Systemtabellen ausblendet, ist mir derzeit nicht bekannt.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#10

AW: Firebird-DB -> Tabellen nach CSV exportieren

  Alt 25. Jul 2013, 01:53
Ne, Zeos ist irrelevant, das $ dreht sich um RDB$.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:57 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