Frage

Ich habe in letzter Zeit mit PostgreSQL gespielt um, und habe Probleme beim Verständnis, wie zum Sichern und Wiederherstellen einer einzelnen Tabelle.

Ich habe pgadmin3 Backup einer Tabelle in der Datenbank, um es auf einen anderen Server zu kopieren. Wenn ich versuche, eine pg_restore auf der Datei zu tun, erhalte ich Fehlermeldungen angezeigt, dass die Sequenz nicht existiert:

pg_restore: [archiver (db)] could not execute query: ERROR:  relation "businesses_id_seq" does not exist
    Command was: 
CREATE TABLE businesses (
    id integer DEFAULT nextval('businesses_id_seq'::regclass) NOT NULL,
    name character varyin...

Es sieht aus wie die Dump-Datei nicht die Sequenz für meine automatische Inkrementieren Spalte enthalten. Wie bekomme ich es, dass schließen?

War es hilfreich?

Lösung

durch Tabelle Dumping nur - wird Dump nur die Tabelle. Sie müssen die Reihenfolge separat neben dem Tisch entleeren.

Wenn Sie Ihre Sequenz nicht wissen, können Sie es mit \d yourtable in psql Liste. Sie werden etwas in der Reihe Ihrer Sequenz ist auf das aussieht wie sehen: nextval('yourtable_id_seq'::regclass')

Dann von der Kommandozeile, pgdump -t yourtable_id_seq

http://www.postgresql.org/docs/9.0/ statisch / app-pgdump.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top