Ergebnis 1 bis 6 von 6

Thema: pg_dump van view daten

  1. #1
    rneumann ist offline Neuer Benutzer
    Registriert seit
    24.11.2009
    Beiträge
    3

    Standard pg_dump van view daten

    Hallo,

    Ich habe derzeit ein dummes problem und habe das Gefuehl das ich es via demm Falschen Weg probiere.
    ich habe derzeit 2 Datenbanken, wo bei die eine Datenbank informationen enthaelt welche ich in der zweiten benoetige. Hierfuer wurden in der ersten Datenbank Views erzeugt welche die Daten zur verfuehgung stellen.

    Mein problem ist nun das ich leider keine Netzwerk Verbindung zwischen denn beiden Systemen habe und somit ein Sneakernet machen muss (was auch nicht uebermaessig schlect ist da das update nur alle paar wochen passiert)

    Meine idee war das Ergebniss von denn Views irgendwie in eine Datei zu dumpen (z.B. mit pg_dump) und die informationen dann in eine neue Table auf Databank 2 zu importieren. Leider spielt da aber pg_dump nicht mit, ich koennte zwar ein Select * From [view] machen und das in eine Datei umleiten aber dann muss ich das alles manuel in INSERT commands umwandeln .

    Waere nett wenn Ihr mir da weiterhelfen koenntet.

    Gruss

  2. #2
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von rneumann Beitrag anzeigen
    Hallo,

    Ich habe derzeit ein dummes problem und habe das Gefuehl das ich es via demm Falschen Weg probiere.
    ich habe derzeit 2 Datenbanken, wo bei die eine Datenbank informationen enthaelt welche ich in der zweiten benoetige. Hierfuer wurden in der ersten Datenbank Views erzeugt welche die Daten zur verfuehgung stellen.

    Mein problem ist nun das ich leider keine Netzwerk Verbindung zwischen denn beiden Systemen habe und somit ein Sneakernet machen muss (was auch nicht uebermaessig schlect ist da das update nur alle paar wochen passiert)

    Meine idee war das Ergebniss von denn Views irgendwie in eine Datei zu dumpen (z.B. mit pg_dump) und die informationen dann in eine neue Table auf Databank 2 zu importieren. Leider spielt da aber pg_dump nicht mit, ich koennte zwar ein Select * From [view] machen und das in eine Datei umleiten aber dann muss ich das alles manuel in INSERT commands umwandeln .

    Waere nett wenn Ihr mir da weiterhelfen koenntet.

    Gruss
    COPY ist Dein Freund, copy (select * from view) to <file>, und das dann drüben einlesen.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #3
    rneumann ist offline Neuer Benutzer
    Registriert seit
    24.11.2009
    Beiträge
    3

    Standard

    Hallo,

    Danke für denn Tipp, war zwar nicht 100% das ergebniss was ich erhofft hatte, wollte eigentlich INSERT Statments haben, aber es funktioniert halbwegs. Hab ein dies bezüglich aber noch ein Problem. Ich wollte in der neue Tabelle wo ich die Daten rein kopiere eine neues Feld erzeugen, für einen PK, gesagt getan aber dann streikt leider der COPY Befehl da er keine Daten fuer

    Hat hierzu noch einer eine idee oder sollte ich dann einefach den PK aus den existierenden Feldern erzeugen.

    Gruss

  4. #4
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    du koenntest ja die views vor dem dumpen in entsprechende tabellen selecten ..

    select ... into <dumpschema.dumptable> from view

    <dumpschema> will ich hier hervorheben, weil du dann per pg-dump ausschließlich dieses schema dumpen kannst - anderer namespace halt - bessere trennung

  5. #5
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von rneumann Beitrag anzeigen
    Hallo,

    Danke für denn Tipp, war zwar nicht 100% das ergebniss was ich erhofft hatte, wollte eigentlich INSERT Statments haben, aber es funktioniert halbwegs. Hab ein dies bezüglich aber noch ein Problem. Ich wollte in der neue Tabelle wo ich die Daten rein kopiere eine neues Feld erzeugen, für einen PK, gesagt getan aber dann streikt leider der COPY Befehl da er keine Daten fuer

    Hat hierzu noch einer eine idee oder sollte ich dann einefach den PK aus den existierenden Feldern erzeugen.

    Gruss
    Versteh ich dich richtig, die Zieltabelle hat diese neue Spalte, die Ursprungstabelle nicht?

    Falls ja: beim COPY (beim insert-copy) die Spalten nennen, die in der alten Tabelle sind. Also alle Spalten außer der neuen PK-Spalte. Und diese kannst Du als SERIAL definieren, der Rest geht dann vollautomatisch.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  6. #6
    rneumann ist offline Neuer Benutzer
    Registriert seit
    24.11.2009
    Beiträge
    3

    Standard

    Ha, die Antwort ist manchmal so einfach
    Und da sag ich noch wer lesen kann ist klar im Vorteil.
    Der Hinweis die Columns anzugenben war Gold richtig. Ich hatte das neue Feld schon als serial definiert hatte aber vergessen/bzw. nicht richtig gelesen die Column Namen anzugeben.

    Tausend dank

    Gruss

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum