Newsgroup: it.comp.lang.visual-basic
Titolo: DB gigantesco !!!!





Ciao a tutti,


        
        seguo da molto il ng e avevo bisogno di un 
aiuto.


 


Ho creato un applicazione che storicizza dei dati 
tramite ADO su un file .mdb (access).


Registro dei dati ogni minuto 24 ore al giorno (è 
un applicazione industriale).


 


Il problema è che dopo soli 20 giorni di lavoro 
questo file è diventato 14 Mb !!! (vuoto era solo 220K)


 


Ho calcolato quanto doveva essere realmente il file 
.mdb e mi risulta che doveva essere solo 6 Mb.


 


Possibile ????


 


Non ci sono altri modi (o database) per salvare una 
quantità così elevata di dati senza generare simili colossi ?


 


Grazie


 



 ha scritto nel messaggio
news:OE31StFNuN9KP...@hotmail.com...


 ha scritto nel 
  messaggio 
news:OE31StFNuN9KP...@hotmail.com
...




Usa DBASE o File di testo, la dimensioni si dimezzano (almeno cosě č
successo a me)



 ha scritto nel 
  messaggio 
news:OE31StFNuN9KP...@hotmail.com
...




Ciao Anakin (onore ai cavalieri jedi)
Questo succede perché Access... "ha sempre paura" che improvvisamente a
tutti gli utentei venga voglia di scrivere montagne di dati all'interno dei
suoi files... Questo non é sempre vero... ed in modo particolare non lo é a
livello delle previsioni disastrose di access... Oltretutto Access non pensa
che a qualcun altro possa servire il disco fisso e lo spazio allocato non lo
molla più... :(
Per ovviare a questo esiste un sistema integrato per "compattare" i
database... C'é un esempio sul sito dell'MSDN 
http://msdn.microsoft.com
 e
puoi facilmente trovare anche nei vecchi post 
http://groups.google.com
 (mi
pare).
Cito da MSDN:  (Q230501 - HOWTO Compacting Microsoft Access Database via
ADO)
Dim jro As jro.JetEngine
Set jro = New jro.JetEngine
jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:\\nwind2.mdb", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\abbc2.mdb;Jet OLEDB:Engine
Type=4"
                Ciao
                        Allanon

 wrote in 
  message 
news:OE31StFNuN9KP...@hotmail.com
...


Ciao Anakin,
innanzitutto attento a non postare i messaggi in HTML ma solo testo.
Poi..........
Il tuo database MDB probabilmente è in formato Access2000 che usa un sistema
di registrazione di 2 byte ad ogni carattere.
Io personalmente uso ancora il formato Access97 che è ancora un sistema
valido
e stabile e non occupa tanto spazio.
Valuta anche di passare ad un motore SQL.
Se hai la licenza VB6 puoi ordinare MSDE a sole 40.000 lire (come ho fatto
io).
MSDE è un SQL Server 7.0 a tutti gli effetti, tranne per il fatto che gli
mancano
dei tools e che supporta fino a 5-6 utenti.
Ma lo puoi distribuire con la tua applicazione.
Ciao
Sir Jo

Anakin ha scritto nel messaggio ...
Ciao a tutti,
                seguo da molto il ng e avevo bisogno di un aiuto.
Ho creato un applicazione che storicizza dei dati tramite ADO su un file .mdb (access).
Registro dei dati ogni minuto 24 ore al giorno (č un applicazione industriale).
Il problema č che dopo soli 20 giorni di lavoro questo file č diventato 14 Mb !!! (vuoto era solo
220K)
Scrivi una routine che compatti automaticamente il BE all'uscita dell'ultimo utente (se ce ne sono).
Comunque 14 MB sono praticamente niente anche per il "famigerato" Jet.
Noi abbiamo sentito la necessitą di usare un server di database con ben altri ordini di grandezza
(leggi oltre il mezzo giga) e in rete.
Ciao, warp

daniele
Perchè non passi a MySQL ?
E' freeware  e funziona alla grande;
Pensa che il sito Yahoo Finance è basato su MySQL; supporta circa 72 transazioni al secondo !
Ciao.

Vi ringrazio tutti per la tempestività con la quale mi avete risposto.
Per quanto riguarda la compattazione del database, beh, la eseguo ad ogni
avvio dell'applicazione, ma non giova molto alla dimensione del database.
Io ho sviluppato il database con Access 2000 ma ho dovuto convertirlo alla
versione precedente per farlo riconoscere da VB6.
-- 
Posted from [62.205.156.220] by way of 
oe50.pav1.hotmail.com
 [64.4.30.22] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG