![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam,
chcę przekonwertować bazę danych z kodowania Latin2 na UNICODE. Robił to ktoś z Was? Jeśli tak, to podzielisz się doświadczeniem? Znalazłem temat na forum, który mniej więcej jest w stanie powiedzieć mi jak zrobić to "na około", czy naprawdę nie ma narzędzi, które przekonwertują bazę z Latin2 na UNICODE? Proszę o pomoc Pozdrawiam Cezar708 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ja jedyne co znalazłem to backup -> konwersja -> zapis do nowej.
Pewnie tą samą metodę znalazłeś. I coś mi się zdaje, że nic lepszego nie będzie. -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 116 Pomógł: 119 Dołączył: 10.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
no właśnie tę tylko znałem... dzięki za zainteresowanie.
Będę teraz dłubał ![]() Pozdrawiam |
|
|
![]()
Post
#4
|
|
Grupa: Nieautoryzowani Postów: 8 Pomógł: 1 Dołączył: 18.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Temat trochę odgrzebany, ale dość często się pojawia, dlatego dorzucę swoje 3 grosze. Od wersji Postgres 8.1, pg_dump ma parametr -E, który odpowiada za encoding. Dzięki temu nie trzeba już bawić się w edycję plików i zamianę znaków.
Operacja zamiany Latin-2 -> UTF8 mogłaby wyglądać następująco: 1. tworzymy backup bazy (podając kodowanie do jakiego ma konwertować pg_dump) - pg_dump -i -h localhost -p 5432 -U postgres -E UTF8 -F c -Z 9 -b -v -f "D:\test_db.backup" test_db 2. tworzymy pustą bazę z nowym kodowaniem tj. UTF8 3. wczytujemy backup ![]() Trzeba zwrócić uwagę, aby nowo-utworzona baza miała poprawne kodowanie, tzn. takie jak ma backup. Jeśli kodowania będą różne to PgSQL złoży się pięknym błędem. Przynajmniej takie miałem doświadczenia z którymś wydaniem 8.3.x. Niestety nie pamiętam dokładnego numeru wersji. Więcej o pg_dump pod tymi linkami: - v8.1 http://www.postgresql.org/docs/8.1/interac...app-pgdump.html - v8.2 http://www.postgresql.org/docs/8.2/interac...app-pgdump.html - v8.3 http://www.postgresql.org/docs/8.3/interac...app-pgdump.html Pełna lista konwersji jakie obsługuje PgSQL znajduje się w tabeli pg_conversion. Dokumentacja wspomina również o tworzeniu swoich konwersji kodowania, jednak nie sprawdzałem jak to działa w praktyce. Domyślnie Postgres obsługuje większość konwersji jakie możemy sobie wymyślić. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 08:31 |