.
Zrobić to normalnie w jakiejś bazie danych. One są przystosowane do gromadzenia dużych ilości informacji, łączenia ich ze sobą, zestawiania, sortowania, filtrowania itp. Jeśli tylko lokalnie to ma działać na 1 stanowisku, to moze to być w SQLLite. Jeśli ma być coś co ma działac na wiekszej ilości stanowisk, to mySQL, MSSQL, PostgreSQL...
misiakufal napisał(a):
Zrobić to normalnie w jakiejś bazie danych. One są przystosowane do gromadzenia dużych ilości informacji, łączenia ich ze sobą, zestawiania, sortowania, filtrowania itp. Jeśli tylko lokalnie to ma działać na 1 stanowisku, to moze to być w SQLLite. Jeśli ma być coś co ma działac na wiekszej ilości stanowisk, to mySQL, MSSQL, PostgreSQL...
Okej! w takim razie zabieram się za pogłębianie wiedzy z SQLLite, gdyż ma działać tylko na 1 stanowisku. Czyli jeżeli będę miał baze danych to będę w stanie później zrobić jakieś automatyczne skanowanie i dopasowywanie par magazynów wraz z dostawami, abym tego nie musiał "z palca" wykonywać? Wybacz, ale jestem troche zielony w tym - 1 rok studiów - a bazy danych i jave dopiero na III roku będę miał, z tego co się orientuję, ale pogłębiania wiedzy nigdy za mało, a ten program sobie wymyśliłem do firmy rodzinnej. :)
bazy relacyjne działają tak, ze definiujesz sobie tabele np
products
product_id | product_name |
---|---|
1 | masło |
2 | chleb |
3 | piwo |
storages
store_id | product_id | quantity |
---|---|---|
1 | 2 | 10 |
2 | 2 | 1 |
3 | 3 | 7 |
i teraz wyciagasz
SELECT products.*, quantity FROM storages INNER JOIN products ON storages.product_id = products.product_id;
i dostajesz cos takiego
store_id | product_id | product_name | quantity |
---|---|---|---|
1 | 2 | chleb | 10 |
2 | 2 | chleb | 1 |
3 | 3 | piwo | 7 |
tak więc najpierw definiujesz sobie tabele, podział tego na rózne obiekty, logiczne łączenie tego w całość. Trzeba pilnowac, żeby dane się nie powtarzały, bo to marnotrawienie miejsca. Algorytmy sortujące, wyszukujące są wbudowane w mechanizm obsługi bazy, więc tutaj nie inregujesz w to, tylko odpowiednio przygotowywujesz zapytanie i odbierasz wyniki. Jeśli chodzi o wydajność bazy.. kilka/kilkanaście milionów rekordów to nie problem.
Podpowiem, że nie trzeba mieć SQLite, bo każde w JDK masz dorzucone JavaDB i wystarczy to później puścić aplikację z jedną dodatkową paczką.