Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [postgreSQL] pg_dump
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
Cezar708
Witam,

aby zrzucić dane z tabeli "TABELA" z bazy "BAZA" użyję polecenia postrgesa:

Kod
postgres@localhost$ pg_dump -a -t TABELA BAZA > plikZDumpem.dump


jednakże mam pewien problem. Otóż muszę zrobić migrację pomiędzy dwoma wersjami systemu, STARĄ i NOWĄ.

w STAREJ wersji TABELA ma strukturę

  1. CREATE TABLE TABELA
  2. (
  3. id serial NOT NULL,
  4. name varchar(250),
  5. przestarzala_kolumna1 varchar(250),
  6. przestarzala_kolumna2 varchar(250),
  7. CONSTRAINT TABELA_pkey PRIMARY KEY (id)
  8. )


natomiast w NOWEJ wersji bazy TABELA ma strukturę:
  1. CREATE TABLE TABELA
  2. (
  3. id serial NOT NULL,
  4. name varchar(250),
  5. CONSTRAINT TABELA_pkey PRIMARY KEY (id)
  6. )


czyli bez przestarzałych kolumn.

jeśli zrobiłbym dumpa ze STAREJ wersji i próbował dane wrzucić do nowej wersji wyskoczyłby oczywisty błąd informujący o tym, że przestarzałe tabele nie istnieją, stąd moje pytanie.

Czy jest jakiś sprytny sposób na to aby zrzucić dane tylko z niektórych kolumn?

Pozdrawiam
Sedziwoj
Backup, to backup, nie służy do miany struktury bazy...
Chyba najłatwiej to utworzyć tą tabelę z inną nazwa, a potem SQL'em przenieść tylko potrzebne dane.
pg_dump nie ma takiej opcji (bo przecież wystarczy przejrzeć dokumentację)
Cezar708
nie.. no jasne, wiem, że pg_dump nie ma takiej możliwości.

Pytam tylko czy znacie jakiś sposób na poradzenie sobie z takim problemem. Bo póki co to po prostu alterowałem tabelę z NOWEJ bazy o te dwie (niepotrzebne) kolumny i po prostu wrzucałem dane z dumpa STAREJ bazy.

jest jeszcze jeden sposób... przefiltrowanie z pliku z użyciem wyrażeń regularnych, ale te wszystkie metody są takie "na około" i na siłę... stąd ten wątek winksmiley.jpg

Pozdrawiam
Zbłąkany
CREATE TABLE AS
Cezar708
o!.. to na pewno pomoże, wielkie dzięki
Zbłąkany
Odnoszę dziwne wrażenie, że coraz mniej ludzi przegląda manuale winksmiley.jpg Ale to tylko taka luźna myśl i wcale nie miałem na myśli ciebie tongue.gif
Cezar708
Zapewniam Cię, że akurat przeglądałem dokumentację Postgresa, również i google poszedł w ruch.

W moim przypadku problem polegał, że tak naprawdę nie wiedziałem czego się chwycić... szukałem pod hasłami związanymi z pg_dump... i po prostu nie przyszło mi do głowy rozwiązanie takie jak zaproponowałeś, a ciężko przeglądać zawsze całą dokumentację.

Dlatego myślę, że właśnie w takich sytuacjach bardzo przydatna jest instytucja forum. winksmiley.jpg

Pozdrawiam i dobranoc (w końcu jutro też jest dzień smile.gif)

PS: Przepraszam za offa winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.