Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [postgreSQL] pg_dump, ... ale wybranych column w tabeli
Cezar708
post
Post #1





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


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ę)
Go to the top of the page
+Quote Post
Cezar708
post
Post #3





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Pozdrawiam
Go to the top of the page
+Quote Post
Zbłąkany
post
Post #4


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

Ostrzeżenie: (0%)
-----


CREATE TABLE AS
Go to the top of the page
+Quote Post
Cezar708
post
Post #5





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


o!.. to na pewno pomoże, wielkie dzięki
Go to the top of the page
+Quote Post
Zbłąkany
post
Post #6


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

Ostrzeżenie: (0%)
-----


Odnoszę dziwne wrażenie, że coraz mniej ludzi przegląda manuale (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ale to tylko taka luźna myśl i wcale nie miałem na myśli ciebie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Cezar708
post
Post #7





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Pozdrawiam i dobranoc (w końcu jutro też jest dzień (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )

PS: Przepraszam za offa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 11:33