Topic: Vymazanie historie z databazy

Mam v databazi vela zaznamov. Ked sa uctuje medzi viacerymi uctami pouzivam metodu, ze to nauctujem vsetko na jeden ucet a potom to opravim. Cez CTRL+H vidno zmeny v databaze na danom zazname. V podstate tieto informacie nepotrebujem, len za tie roky uz budu zaberat znacne mnozstvo udajov a databaza mi uz "trochu seka".

Akym sposobom je mozne oznacit a zmazat tieto stare a nepodstatne historicky zaznamy, ktore normalne v programe ani na prvy pohlad nevidno a zaberaju tam len zbytocne miesto?

Re: Vymazanie historie z databazy

V SQLite zóne (menu Databáza / SQLite zóna) pomocou vlastných príkazov môžeš ovládať čokoľvek.
Odporúčam predtým dôkladne zálohovať databázu pre prípad nechceného poškodenia databázy!!!

Čo sa týka histórie, tabuľka má názov history, takže uvádzam len základné SQL príkazy:

Prezrieť všetky záznamy z tabuľky history:
SELECT * FROM history

Vymazať všetky záznamy z tabuľky history
DELETE FROM history

Vymazať len určité záznamy z tabuľky history, prináležiace k transakcii s nejakým ID
DELETE FROM history WHERE hi_d_id = (číslo ID transakcie)

Na záver (po vymazaní histórie) je ešte dobré použiť príkaz VACUUM na odstránenie vymazaných údajov z databázy (databáza sa tak určite zmenší). Príkaz VACUUM je v zozname príkazov v SQLite zóne.

Re: Vymazanie historie z databazy

Vdaka. Databaza je hned o tretinu mensia. smile

Pripravit sa v buducnosti na nejake limity, problemy, ci obmedzenia, kedy to uz zacne robit nejaky problem, alebo je to len vsetko otazka hardware?

Re: Vymazanie historie z databazy

Podľa mňa je to skôr otázka hardware. smile
Výrobca SQLite databázy uvádza na svojich stránkach obmedzenia SQLite databázy.
V bode 14. sa uvádza maximálna veľkosť databázy:

"Every database consists of one or more "pages". Within a single database, every page is the same size, but different database can have page sizes that are powers of two between 512 and 65536, inclusive. The maximum size of a database file is 4294967294 pages. At the maximum page size of 65536 bytes, this translates into a maximum database size of approximately 1.4e+14 bytes (281 terabytes, or 256 tebibytes, or 281474 gigabytes or 256,000 gibibytes)."