Prosta baza danych dostępna w C
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Prosta baza danych dostępna w C
Witam,
Programuję trochę w C pod linuxem (gtk). Coraz bardziej brakuje mi jakiejś bazy danych ale do tej pory jeszcze nie obsługiwałem żadnej.
Jestem raczej amatorem więc nie poznam kilku baz tylko skoncentruje się na jednej stąd moja prośba do osób mających doświadczenie w temacie.
Wiem, że nie ma idealnych i uniwersalnych rozwiązań ale proszę o wszelką pomoc w wyborze najodpowiedniejszej dla mnie bazy danych.
-Po pierwsze chcę aby baza była dostępna na Linux-sie (to oczywiste).
-Najlepiej jakby dopuszczała również komercyjne zastosowania (ze wstępnego rozeznania tematu z popularnych zaliczają się: PostgreSQL, Firebird, SQLite )
-Piszę pod zwykłym C więc powinna mieć mechanizmy (biblioteki) pozwalające na dostęp z poziomu tego języka.
-Fajnie jakby była dobrze opisana w necie (poradniki, tutoriale, przykłady).
Starczy koncertu życzeń. czy jest coś co się chociaż ociera o te wytyczne? Proszę o wszelkie podpowiedzi czym się różnią w praktyce pomiędzy sobą bazy.
Pozdrawiam
Programuję trochę w C pod linuxem (gtk). Coraz bardziej brakuje mi jakiejś bazy danych ale do tej pory jeszcze nie obsługiwałem żadnej.
Jestem raczej amatorem więc nie poznam kilku baz tylko skoncentruje się na jednej stąd moja prośba do osób mających doświadczenie w temacie.
Wiem, że nie ma idealnych i uniwersalnych rozwiązań ale proszę o wszelką pomoc w wyborze najodpowiedniejszej dla mnie bazy danych.
-Po pierwsze chcę aby baza była dostępna na Linux-sie (to oczywiste).
-Najlepiej jakby dopuszczała również komercyjne zastosowania (ze wstępnego rozeznania tematu z popularnych zaliczają się: PostgreSQL, Firebird, SQLite )
-Piszę pod zwykłym C więc powinna mieć mechanizmy (biblioteki) pozwalające na dostęp z poziomu tego języka.
-Fajnie jakby była dobrze opisana w necie (poradniki, tutoriale, przykłady).
Starczy koncertu życzeń. czy jest coś co się chociaż ociera o te wytyczne? Proszę o wszelkie podpowiedzi czym się różnią w praktyce pomiędzy sobą bazy.
Pozdrawiam
Re: Prosta baza danych dostępna w C
Wszystko zależy od ilości danych jakie zamierzasz przechowywać w bazie oraz mechanizmów wewnętrznych systemu bazodanowego, które będą Ci potrzebne. Dla niewielkiej ilości danych lokalnych SQLite będzie odpowiednia. Do zastosowań rozproszonych (wielu użytkowników korzystających z różnych komputerów) zdecydowanie coś z obsługa sieci. Tutaj dobrze sprawdzi się PostgrSQL. O Firebirdzie się nie wypowiem, bo nie znam tego systemu.
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Prosta baza danych dostępna w C
Mam podpięty sterownik pod komputer i potrzebuję rejestrować kilkadziesiąt zmiennych dwubajtowych na sekundę.
Zależy mi na łatwości obsługi bazy, dostęp z jednego programu.
Zależy mi na łatwości obsługi bazy, dostęp z jednego programu.
- LordRuthwen
- Moderator
- Posty: 2324
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?
Re: Prosta baza danych dostępna w C
A ta baza ma przechowywać dane w jednej tabeli i jednej kolumnie, bo tak wynika informacji?
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Prosta baza danych dostępna w C
Nie wiem jak się przechowuje dane w bazach, czy to jest na zasadzie tabel w arkuszu kalkulacyjnycm?
Czy bazy różnią się na tyle że ma to znaczenie ile potrzebuję kolumn? Chcę wybrać bazę również do przyszłych projektów więc powinna dawać możliwości wielu kolumn niezależnie od obecnego projektu.
W tej chwili mam z jednej strony kilkadziesiąt zmiennych a z drugiej czas. Czy czas jest parametrem czy jest standardowo przypisywany do rekordu?
Czy któraś z baz wyróżnia w łatwości w obsłudze (sterowniki, biblioteki) w C pod Linuxem?
Czy bazy różnią się na tyle że ma to znaczenie ile potrzebuję kolumn? Chcę wybrać bazę również do przyszłych projektów więc powinna dawać możliwości wielu kolumn niezależnie od obecnego projektu.
W tej chwili mam z jednej strony kilkadziesiąt zmiennych a z drugiej czas. Czy czas jest parametrem czy jest standardowo przypisywany do rekordu?
Czy któraś z baz wyróżnia w łatwości w obsłudze (sterowniki, biblioteki) w C pod Linuxem?
- LordRuthwen
- Moderator
- Posty: 2324
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?
Re: Prosta baza danych dostępna w C
No to w takim razie, proponuję Ci poczytać najpierw jak działają bazy i jak przechowują dane, bo bez tej wiedzy i tak nic nie będziesz w stanie zrobić. Z poziomu C można spokojnie używać MySQL-a i PGSQL.
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Prosta baza danych dostępna w C
Dokładnie tak, chcę poczytać o bazach, tylko chciałem się zagłębić już w jakąś konkretną stąd moja porśba w tym poście.
MySql wolałbym odrzucić ze względu na kontrowersję w komercyjnym wykorzystaniu kodów na licencji GPL. Tearaz przedemną nauka, ale może kiedyś trafią się komercyjne projekty.
Jakie narzędzia (sterowniki, biblioteki) służą do skomunikowania się z PGSQL z poziomu C w Linux-sie?
MySql wolałbym odrzucić ze względu na kontrowersję w komercyjnym wykorzystaniu kodów na licencji GPL. Tearaz przedemną nauka, ale może kiedyś trafią się komercyjne projekty.
Jakie narzędzia (sterowniki, biblioteki) służą do skomunikowania się z PGSQL z poziomu C w Linux-sie?
Re: Prosta baza danych dostępna w C
W dużym uproszczeniu tak jest. Tylko ten arkusz nazywany jest skoroszytem (wg nazewnictwa Microsoftu) i posiada więcej arkuszy. Dodatkowo istnieje możliwość tworzenia powiązań (relacji) pomiędzy arkuszami, aby nie przechowywać tych samych danych w wielu miejscach.arturromarr pisze:Nie wiem jak się przechowuje dane w bazach, czy to jest na zasadzie tabel w arkuszu kalkulacyjnycm?
Jak każde oprogramowanie, systemy zarządzania bazami danych mają swoje ograniczenia, lecz są one na takie, że raczej nie uda Ci się ich osiągnąć.arturromarr pisze:Czy bazy różnią się na tyle że ma to znaczenie ile potrzebuję kolumn? Chcę wybrać bazę również do przyszłych projektów więc powinna dawać możliwości wielu kolumn niezależnie od obecnego projektu.
Myślę, że tutaj lepiej sprawdzi się zwykły plik (nawet tekstowy). Baza danych to strzelanie z armaty do komara. Czas musisz zapisywać w bazach ręcznie, nie jest on dodawany automatycznie podczas dodawania rekordu.arturromarr pisze:W tej chwili mam z jednej strony kilkadziesiąt zmiennych a z drugiej czas. Czy czas jest parametrem czy jest standardowo przypisywany do rekordu?
Święte słowa.LordRuthwen pisze:No to w takim razie, proponuję Ci poczytać najpierw jak działają bazy i jak przechowują dane, bo bez tej wiedzy i tak nic nie będziesz w stanie zrobić. Z poziomu C można spokojnie używać MySQL-a i PGSQL.
- LordRuthwen
- Moderator
- Posty: 2324
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?