MySQL++ – genialny wynalazek
Prawdą jest, że mysql++ to rewelacyjna biblioteka, ale nie jestem w stanie policzyć ile godzin walczyłem, żeby ją zainstalować i skompilować program na moim Xubuntu 7.04. Cała historia, zaczęła się od pomysłu na bota, o którym zapewne jeszcze nie raz napiszę. Wracając do sedna – bot miał komunikować się z bazą danych. Zacząłem szperać i trafiłem na mysql++ jako w pełni darmowe rozwiązanie, o którym wszyscy wypowiadają się w samych superlatywach. Z tej strony www.tangentsoft.net/mysql++/ zassałem paczki (2.3.2) i do dzieła.
Pakiety, jakie należy zainstalować, aby wogóle zacząć myśleć o mysql++ to:
mysql-client i libmysqlclient15-dev
Następnie możemy przejść do wydania poleceń (na moim sprzęcie troszkę to wszystko trwało – Toshiba 1800-554):
# ./configure # make # make install
Po tym wszystkim pomyślałem „no to teraz biorę się do roboty”, ale niestety to był dopiero początek…
Mój kompilator rzecz jasna g++ korzystam również z IDE – Anjuta. W moim przypadku polecenie kompilacji wygląda tak :
g++ test.cpp -o test -I /usr/local/include/mysql -I /usr/local/include/mysql++ -l mysqlpp -l mysqlclient
Wszystko pięknie, niestety jest jeszcze jedno „ale” program nie zadziała, jeśli nie dodamy tej linii kodu:
/usr/local/lib
do pliku /etc/ld.so.conf, następnie jako root wydajemy polecenie
#ldconfig
Dopiero teraz możemy cieszyć się naszym programem, poniżej wklejam przykładowy kod. Jeśli pojawią się jakieś pytania problemy piszcie śmiało.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <iostream> #include <mysql.h> using namespace std; using namespace mysqlpp; int main() { try { char db[] = "nazwa_bazy_danych"; char host[] = "host"; char user[] = "user"; char passwd[] = "spass"; Connection c(db, host, user, passwd); if(c) cout << "==> Połączenie OK"; else cout << "==> Sprawdz połącznie - ERROR "; } catch (Exception& e) { cout << "==> Error: " << e.what() << endl; } } |







