2007 09 PostgreSQL [Bazy Danych]


rozwiÄ…zania
PostgreSQL
PostgreSQL
zaczynamy z OpenOffice Base
Adam Radłowski
PostgreSQL jest znanym i wcale nie nowym systemem baz danych. Powstał w słynnym Uniwersytecie
Kalifornijskim w Berkeley i nazywał się wtedy po prostu Postgres. W ubiegłym roku obchodził dwudzieste
urodziny. Pomimo podeszłego informatycznie wieku rozwija się bardzo szybko i dynamicznie.
am okazję już od kilku lat obserwować je- częściowo lub w całości na GPL, warto zapoznać się
go działanie w różnych systemach opera- z systemem licencjonowania MySQL-a;
cyjnych, pisać dla niego oprogramowa- " dobra, przetłumaczona na język polski literatura,
Mnie klienckie.Nigdy mnie nie zawiódł. co jest zawsze ważne na początku;
Strona systemu zarządzania bazami danych PostgreSQL: " doskonała, spójna dokumentacja, bazująca na przyję-
http://www.postgresql.org. tych definicjach i pojęciach z baz danych, niepróbują-
ca szokować radosnym słowotwórstwem;
Dlaczego postawiłem na PostgreSQL? " bardzo dobra prędkość obróbki danych przy zacho-
Tak jak większość programistów musiałem wraz ze zmie- waniu pełnej transakcyjności;
niającym się (zaczynając od XT) komputerem PC i syste- " duża ilość interfejsów programistycznych i sterowni-
mami operacyjnymi, działającymi na tej platformie sprzę- ków dostępu do baz;
towej, w pewnym momencie podjąć decyzję o wymianie " bazy danych transakcyjne, bez ustalania ich granicz-
poczciwego DOS-a na coś nowocześniejszego. Wybór padł nej wielkości;
na Linuksa, a jeśli chodzi o system baz danych  na Post- " rozbudowany mechanizm kursorów odczytu;
greSQL. " wieloplatformowość;
Argumentami za PostgreSQL-em były: " doskonały serwis  fachowe odpowiedziedzi udziela-
ne są nieodpłatnie, nierzadko w ciągu kwadransa.
" wygodne licencjonowanie  PostgreSQL opiera siÄ™ na
prostej licencji  BSD, więc nawet mniej restrykcyj- Jak zacząć
nej niż LGPL, pozwalającej na swobodne jego uży- Jeśli jesteś osobą niezbyt obeznaną z bazami danych SQL,
wanie w różnie licencjonowanych aplikacjach; dla po- a potrafisz np. choć w małym stopniu używać interfejsu do
równania z innymi systemami baz danych, opartych tworzenia zapytaÅ„, raportów i formularzy w Microsoft®
44 wrzesień 2007
linux@software.com.pl
rozwiÄ…zania
PostgreSQL
niczyÅ‚em w kursie  Administering a Microsoft® Instalacja sterownika w wersjach 1.1.x opi-
SQL Server"! 2000 Database , zdumiało mnie sana jest na stronie sterownika. Zalecam jed-
to, że nikt z uczestników oprócz mnie nie znał nak OpenOffice 2.2.x, ponieważ ma on więk-
SQL-a, choć sądząc po zawartości skryptu na- sze możliwości operowania na bazach danych
pisanego do kursu - ta umiejętność ewidentnie niż 1.1.x.
jest na kursie potrzebna. DbajÄ…cy o bazy admi- W swojej dystrybucji Linuksa zainstalujcie
nistrator na pewno będzie w jakimś momen- wszystko, co należy do pakietu PostgreSQL.
cie zmuszony napisać prosty skrypt SQL - wy- Jeżeli jest to Mandriva 2007 czy Fedora, lokal-
zwalacz czy cokolwiek innego. ny motor bazy powinien działać po zainstalo-
Rysunek 1. Wybieramy z listy wyboru  Połącz
waniu i wystartowaniu demona (usługi) Post-
z istniejÄ…cÄ… bazÄ… danych opcjÄ™  postgresql
PostgreSQL i OpenOffice greSQL albo (dla mało doświadczonych) prze-
Access i brakuje Ci czegoÅ› takiego w Linuk- Dla OpenOffice stworzono sterownik do ob- Å‚adowaniu systemu operacyjnego.
sie, to z tego artykułu dowiesz się o połącze- sługi baz danych PostgreSQL. Z niego też najle- Aby założyć plik bazy danych komuniku-
niu OpenOffice z PostgreSQL i... nie będzie piej jest skorzystać przy operowaniu na bazach jącej się z serwerem bazy PostgreSQL, wybie-
Ci potrzebna gruntowna znajomość Postgre- (mamy jeszcze JDBC i ODBC, ale wspominany ramy w OpenOffice 2.2.x opcję Plik/Nowy/baza
SQL-a na poczÄ…tek. sterownik wydaje siÄ™ najsprawniejszy). danych.
Jeżeli jednak chcesz poznać PostgreSQL Można go pobrać ze strony http://dba. Będziemy przechodzić przez odpowied-
lepiej, to powinieneś, moim zdaniem zrobić openoffice.org/drivers/postgresql/index.html. nie etapy pracy kreatora  przedstawione na
to, co opisuję poniżej. Instalujemy go w OpenOffice 2.2.x w opcji: rysunkach.
Należy kupić jakąś cienką książeczkę Narzędzia/Menedżer pakietów, gdzie po kliknię- Wybieramy z listy wyboru  Połącz z istnie-
z ćwiczeniami praktycznymi. Należy spraw- ciu przycisku Dodaj wybieramy plik ze sterow- jącą bazą danych opcję  postgresql .
dzić, czy publikacja zawiera to, co nas intere- nikiem, wyłączamy OpenOffice, włączamy na Teraz wpisujemy parametry połączenia.
suje, czyli podstawowe opisy instalacji, konfi- powrót i to wszystko. Na rysunku 2. przedstawiłem przykładowy
gurowania i pracy na bazie danych. Jeśli nie
znamy języka SQL, należy sprawdzić, czy au-
tor nie zakłada, że taką umiejętność posia-
damy. W moim wypadku była to publika-
cja Marcina Szeligi  PostgreSQL 7.2. Ćwicze-
nia praktyczne .
Trzeba przeczytać tyle, aby wiedzieć, co
zrobić na początek i zainstalować Postgre-
SQL z binarnych pakietów dostarczonych
z naszą dystrybucją Linuksa. Następnie nale-
ży wykonać ćwiczenia z książki, działając prak-
tycznie w systemie baz danych.
Jeżeli chcemy tworzyć oprogramowanie
klienckie, a nie znamy SQL-a, należy nauczyć
się tego języka (książeczka do ćwiczeń po-
winna dawać taką możliwość), tak aby wie-
dzieć, że coś można zrobić. W trakcie używa-
nia PostgreSQL-a będziemy systematycznie Rysunek 2. Wpisujemy parametry połączenia
poszerzać naszą wiedzę.
Potem poszukać trzeba dokładniejszej
i bardziej odpowiadajÄ…cej naszym potrzebom
pozycji, przeczytać ją i działać w PostgreSQL-
u już na etapie rzeczywistego korzystania.
W moim wypadku taką książką była publika-
cja  Bazy danych i PostgreSQL Richarda Sto-
nesa i Neila Matthew.
W trakcie pracy w pewnym momencie
zacząłem się opierać na oryginalnej doku-
mentacji PostgreSQL, która jak dotąd nie za-
wierała (w wersji 8.1.4) tylko jednej odpowie-
dzi - jak używać funkcji umożliwiającej two-
rzenie zapytań do dwóch baz danych naraz.
Należy bezwzględnie poznać język SQL,
nawet jeśli jesteśmy administratorem systemu
baz danych, czyli teoretycznie baz nie używa-
my, nie robimy w nich zmian itp. Kiedy uczest- Rysunek 3. Uwierzytelnienie użytkownika
www.lpmagazine.org 45
rozwiÄ…zania
PostgreSQL
Rysunek 5. Ustawienia specjalne
Aby w OpenOffice możliwa była edycja
tabeli, musi ona mieć klucz główny. Klucz
główny założony na pole specjalne OID nie
daje możliwości edycji. W wersjach 8.1.x
Rysunek 4. Rejestracja bazy
i wyższych domyślnie nie ma OID, oprócz te-
wpis, który można zmodyfikować dla połą- zytywny komunikat jak na Rysunku 3. W os- go jest ono ukryte, więc na razie nie kłopocz-
czenia z dowolnym serwerem PostgreSQL. tatnim kroku każemy zarejestrować bazę i wcis- my się tym, co to jest.
W systemach Mandriva 2007 i Fedora, je- kamy Utwórz. W OpenOffice wersja 1.1.x mamy także
żeli działa już w naszym komputerze serwer Rejestracja bazy do operowania w modu- dostęp do baz, gdzie możemy tworzyć zapy-
bazy PostgreSQL, mamy dostęp do pustej ba- le baz danych OpenOffice nie jest potrzebna, tania, a nawet tabele, wypełniać je, kreować
zy  postgres . Jeżeli nie umiemy zakładać baz lecz jeśli chcielibyśmy wykorzystać bazę jako formularze edycyjne, ale tylko poprzez zare-
w PostgreSQL-u, a chcielibyśmy po prostu pra- zródło danych dla arkusza kalkulacyjnego al- jestrowane bazy jako zródła danych (w Open-
cować, wystarczy zamiast powyższych wpisać bo korespondencji seryjnej, musi ona być za- Office 1.1.x parametry bazy nie są zapisywa-
parametry user=postgres dbname=postgres. rejestrowana. ne w pliku).
Wpisy host=..., port=..., password=... pomijamy. Już możemy używać bazy, ale koniecz- Nie piszę o tym, jak w OpenOffice zakła-
Dla bardziej zaawansowanych - parame- nie należy przeprowadzić kilka dodatko- da się tabele czy tworzy zapytania (zapytania
try, które podajemy, są zgodne z parametrami, wych czynności, związanych z ustawianiem to kwerendy  ten twór językowy także  bar-
jakie podajemy funkcji PQConnectdb z bibliote- połączenia... Kiedy baza danych jest otwarta, dzo lubię ). Jest to temat powiązany z Open-
ki libpq. Nie wpisujemy nazwy użytkownika wybieramy z menu Open Office Edycja/Baza Office, a nie konkretnie z PostgreSQL-em.
i nie zaznaczamy kwadracika (ang. check box) danych/Ustawienia zaawansowane i w zakład- Tym niemniej para PostgreSQL-OpenOffice
Wymagane hasło, ponieważ podaliśmy te in- ce Ustawienia specjalne musimy wybrać opcje to naprawdę dobre połączenie klienta do ba-
formacje w parametrach połączenia z bazą. Je- tak jak na Rysunku 5. zy i wysokiej jakości serwera bazy.
śli chcielibyśmy, aby OpenOffice zawsze py- W przypadku komputera lokalnego (we Należy także wspomnieć, że w Linuksie
tał nas o hasło przy otwieraniu pliku bazy wspominanym przypadku dystrybucji Man- mamy bardzo wygodne narzędzie do pra-
OpenOffice, w parametrach połączenia z ba- driva 2007 czy Fedora) nie musimy już nic wię- cy z bazami danych (tak wynika z opisów)
zą pomijamy wpisanie danej user i password cej ustawiać. Jeżeli podłączamy się do serwe-  Kexi. Niestety, nie miałem nigdy potrze-
i w okienku, które widzimy na Rysunku 3, wpi- ra, który koduje polskie znaki inaczej niż nasz by użyć tej aplikacji. Tym niemniej z samej
sujemy użytkownika i zaznaczamy kwadra- system, musimy poinformować o tym sterow- ciekawości na pewno  spróbuję się niedłu-
cik Wymagane hasło. Kliikamy przycisk Testuj nik, wchodząc do Edycja->Baza danych->Wła- go z Kexi (kiedy piszę ten artykuł, właśnie
połączenie. ściwości w zakładce Ustawienia dodatkowe wy- trwa kompilacja).
Mam nadzieję, że podczas pierwszej pró- brać z listy kodowanie znaków serwera bazy. Na Niniejszy artykuł najprawdopodobniej
by podłączenia do bazy uzyskacie taki sam po- rysunku 6. z systemu pracującego w ISO8859- zapoczątkuje serię podobnych, opisujących
2 podłączamy się do bazy danych kodowanej różne elementy pracy z PostgreSQL i cieka-
w UTF-8. Nazwy hosta i portu nie ruszamy, we funkcjonalności tego systemu zarządza-
choć wyglądają dziwnie (port)  wpisaliśmy nia bazami danych.
O autorze
te elementy wcześniej przy okazji nawiązywa-
Adam Radłowski specjalizuje się w zakre- nia połączenia. Schemat jest czymś w rodzaju
sie tworzenia aplikacji bazodanowych dla katalogu (folderu), w którym gromadzone są
sieci lokalnych i rozległych (od kilku lat Post- tabele w bazie. Jako domyślny schemat klient
greSQL - platforma klienta - Linuks), kieruje PostgreSQL traktuje schemat  public .
wdrożeniami tych aplikacji, zapewnia pomoc Jeżeli podłączamy się w najprostszy spo-
autorską firmom współpracującym. Równo- sób do gotowej bazy  postgres w systemie
legle zajmuje siÄ™ m.in. administracjÄ… bazami Mandriva 2007 lub Fedora, w bazie nie ma
PostgreSQL oraz systemami GIS. schematu  public . Przy zakładaniu pierwszej
Kontakt z autorem: tabeli należy po prostu wpisać, że ma ona być
adamr@informatyka.gdansk.pl założona w schemacie  public i schemat zo- Rysunek 6. Podłączamy się do bazy danych
stanie założony. kodowanej w UTF-8
46 wrzesień 2007


Wyszukiwarka

Podobne podstrony:
2004 09 Kexi bazy danych [Bazy Danych]
2006 09 Programowanie i bazy danych [Programowanie]
Bazy danych postgreSQL programowanie i implementacja
Odzyskiwanie bazy danych PostgreSQL
Instalacja bazy danych PostgreSQL ( pgAdmin3) w systemie Linux (Ubuntu 9
BAZY DANYCH Streszczenie z wykładów
Strona polecenia do bazy danych
2004 11 Porównanie serwerów relacyjnych baz danych Open Source [Bazy Danych]
MySQL Mechanizmy wewnętrzne bazy danych

więcej podobnych podstron