Łączenie się z bazą danych MySQL z poziomu C++

Do tej pory aplikacje, które omawiałem przy okazji artykułów z C++ zapisywały swoje dane w pamięci RAM lub za pomocą zwykłych plików. W pierwszym przypadku oczywiście wszystko co „zapisaliśmy” w zmiennych bądź stałych po wyłączeniu programu po prostu traciliśmy. Korzystając z plików ten problem mogliśmy już ominąć.

Fot: simplu27, CC0 Public Domain.

Fot: simplu27, CC0 Public Domain.

Niestety nasz system rezerwacji miejsc w kinie, który został stworzony w ostatnich artykułach jest jednak zbyt wymagający do tego, żeby zapisywać wygenerowane za jego pośrednictwem dane w zwykłych plikach. Tutaj potrzebujemy czegoś znacznie lepszego i dodatkowo umożliwiającego dostęp do danych z kilku urządzeń. Dobrym pomysłem będzie więc skorzystanie z serwera bazodanowego wyposażonego na przykład w bazę MySQL. Przyjrzyjmy się więc, jak połączyć się z taką bazą.

Na początku musimy dołączyć odpowiednie pliki nagłówkowe, zarówno na Windowsie jak i OS X oraz Linuxie będzie to plik mysql.h (konfiguracja Xcode):

Po zaimportowaniu odpowiedniego pliku przechodzimy do stworzenia obiektu (zmiennej) typu MYSQL oraz jej inicjalizacji:

Kolejnym krokiem będzie nawiązanie połączenia z naszym serwerem bazodanowym. Jeśli nie dysponujecie takim możecie na potrzeby edukacyjne uruchomić go lokalnie, jak zresztą sam zrobiłem.

Z bazą MySQL łączymy się za pomocą funkcji mysql_real_connect(). Pamiętajcie żeby przygotować takie informacje jak adres serwera (w przypadku postawienia bazy na własnym komputerze czyli lokalnie jest to domyślnie – 127.0.0.1), nazwy użytkownika, hasła oraz nazwy utworzonej bazy danych (np. mysql – jest to baza tworzona domyślnie i zawiera informacje o waszej instalacji MySQL):

Ogólna składnia:

Połączenie z bazą danych zamykamy za pomocą instrukcji mysql_close():

Przykładowy program, łączący się z bazą danych:

Przeczytaj również

, , , , ,