[ biljana.66 @ 07.08.2008. 08:50 ] @
Pozdrav svima.
Kao i sam naslov teme sto kaze kako mogu saznati koliko prostora zauzima baza, koliko imam tabela u bazi i koliko imam queri-a u bazi.
To se odnosim da mi u formi na kojoj imam lblZauzimanjeBaze, lblBrojTabela, lblBrojQueria da mi ispise podatke.

Hvala svima na pomoci.
[ Getsbi @ 07.08.2008. 10:32 ] @
Baza podataka u Access-u je sve što zauzima jedan .mdb fajl sa svim svojim objektima, tako da je size svih tabela teško izdvojiti. Za veličinu onog što vidiš u bilo kojem browseru, možeš u kodu da upotrebiš funkciju LOF(). Pogledaj temu http://www.elitesecurity.org/t244400-0#1469092 gde je dat VBA kod za kompresiju baze. Broj tabela i Query-ja možeš dobiti ako u For each petlju ugradiš brojač i pobrojiš oodređeni tip objekta.
[ domaci_a_nas @ 07.08.2008. 14:40 ] @
LOF je jedno od rešenja, ali postoji i FileLen kao kraća varijanta:
Code:
Private Sub Command0_Click
lblZauzimanjeBaze.Caption =  FileLen(CurrentDb.Name)
lblBrojTabela.Caption = CurrentData.AllTables.Count - Broj tabela u bazi
lblBrojQueria = CurrentData.AllQueries.Count        - Broj vidljivih Queryja
'lblBrojTabela.Caption = CurrentDb.TableDefs.Count  - Daje isti rezultat kao CurrentData.AllTables.Count
'lblBrojQueria = CurrentDb.QueryDefs.Count          - Daje uvek veći broj nego CurrentData.AllQueries.Count jer _
                                                      ubraja i Queryje koji služe kao rowsource listboxova i comboboxeva
End Sub