Newsgroup: it.comp.lang.visual-basic
Titolo: database disintegrato

Cari colleghi,
un mio cliente dopo aver lavorato con il mio programma, mi ha gentilmente
(!!??) restituito il database access versione 2000 completamente
danneggiato.
sono preoccupato perchè non riesco a capire cosa possa aver provocato questa
tragedia .... tutte le classiche precauzioni per scrivere un codice direi
solido, sono state prese in considerazione .... a questo punto non riesco a
risolvere il problema.
se nessuno di voi riesce a dirmi la probabile causa, mi sapreste indicare
una soluzione ?
il mio cliente lavora con il mio programma in rete, il server è Win2000 e i
client WinNT4/Win2000.
il mio software usa ado 2.6 e installa le Jet4.0
grazie

Non č che sei molto d'aiuto cosě.
Di cause ce ne possono essere a bizzeffe.
Partiamo dal semplice virus?
Vogliamo parlare magari che mentre stava
lavorando in rete la rete si č crashata e ti
ha sfondato il db? Molto remota come
possibilitŕ ma puň essere.
Metti che simpaticamente abbia voluto
sproteggere il db dalla password - con le
utility che trovi in rete - che gli
avevi messo per vedere cosa ci scrivevi
dentro il db o magari cambiare qualche
dato che non poteva piů toccare e l'utility
nel riconvertire il db ha fracassato tutto.
Metti che abbia tentato la lettura del db
da programmi di terze parti - simile al problema
sopra.
Metti che abbia tentato di riconvertire il db
ad una versione precedente di access.
Metti - la cosa piů stupida che ci sia - abbia
aperto il file con il notepad ... abbia scritto
qua e la e poi salvato.
Non mi viene in mente niente altro.
Magari non č nessuna di queste ... perň
hai qualche elemento su cui indagare.
Ciao
Andrea

 Di cause ce ne possono essere a bizzeffe.
Andrea, quello che hai detto è certamente possibile, ma la tua fantasia,
lo dico simpaticamente, è mostruosa. :-)

 il mio software usa ado 2.6 e installa le Jet4.0
insomma, a parte l'umana comprensione per qualcuno in difficoltà, se non
"scuci" qualche informazione in più sarà difficile darti una mano.
Direi che come prima cosa potresti dirci in modo più dettagliato che cosa
intendi per "disintegrato" (ad es. file danneggiato, oppure tabelle
mancanti, struttura delle tabelle modificata o cos'altro)
Salutoni
Sergio

Beh accetto il complimento ,.. ma ti assicuro che
dopo che passi dentro ad una 50ina o più di realtà
aziendali come clienti o altro ... anche l'impossibile
ti sembra reale.
Ciao
Andrea

 lo dico simpaticamente, è mostruosa. :-)
Concordo con Andrea. Quello che un utOnto è in grado di fare è al di
là degli incubi più sfrenati di un programmatore... se poi _CREDE_ di
essere un utente "evoluto", magari perché ha compr^Wottenuto un
attestato tipo ECP, che Dio ce ne scampi e calamaretti.
Bye, G.

 ha scritto nel messaggio
news:arb4qo$h0hhv$1...@ID-61006.news.dfncis.de...

Quando ancora non potevo mettere becco in alcune decisioni, un cliente mi
impose di progettare un sistema, che sarebbe poi stato realizzato da una
sw-house di sua fiducia (leggasi percentuale all'ufficio acquisti).
Progetto bellissimo, distribuito su 54 PC, che 24/24 ore monitoravano una
serie di eventi, e scrivevano periodicamente su DB locali un log di tali
eventi, mostrando anche agli utenti cosa stava avvenendo. Alcuni server si
dovevano occupare di sincronizzare i dati fra i diversi PC quando la rete
era disponibile, e di archiviare in maniera centralizzata un riepilogo dei
dati.
Il mio progetto prevedeva MSDE, la sw-house, adducendo non meglio precisati
motivi di performance, convinse il cliente a usare Access.
Morale: dopo un anno di lavoro, il progetto parte. In due mesi, nessuno dei
54 PC ha superato i dieci giorni di attività senza richiedere un "compatta e
ripristina" del DB. Cadute di rete, rete intasata, cadute di tensione,
ecc... Tutte cose che possono capitare, e che in un buon sistema non devono
disturbare più di tanto.
Poi, il progetto è stato rifatto utilizzando MSDE, installato su ciascuno
dei 54 PC e sui server.
Da ormai un anno funziona 24/24h, e gli unici problemi sono stati qualche
alimentatore saltato per malfunzionamenti dell'UPS, qualche HD che ha
salutato tutti, più un paio di PC rubati, ma nessun dato è mai andato perso
e nessun intervento umano è mai stato richiesto per sistemare qualche DB
(salvo reinstallare sugli HD morti, ma questo non riguarda il DB).
Conclusione:
la scelta di Access è sempre ad altissimo rischio in ambienti dove
l'attività si svolge in rete. Con tecniche di programmazione particolarmente
'robuste', si può ridurre un po' la frequenza del problema, e su reti molto
stabili addirittura può sembrare che tutto sia perfetto, ma prima o poi un
DB che saluta tutti c'è sempre.
E quel che è peggio, un backup di un MDB non è detto che sia consistente,
per cui potrebbe non essere ripristinabile, mentre un backup di MSDE è
sempre buono, visto che è lo stesso MSDE che si occupa di backuppare le
transazioni in modalità 'tutta o niente'.
Quando, però, ci è imposto, per qualche motivo, l'utilizzo di MSDE, non c'è
proprio niente da fare. Io, in quei due o tre casi in cui mi è stato
imposto, ho precisato subito al cliente che su alcune cose non garantivo,
perchè non dipendeva da me, e che ritenevo fondamentale una politica di
backup su più supporti 'a rotazione'.
Ciao
Alberto

 DB che saluta tutti c'è sempre.
concordo con te su tutto, ma penso che abbia giocato un grosso ruolo 
anche il fatto che avete rifatto il progetto; quindi ne conoscevate i 
punti debboli e sapevate gia a cosa andavate incontro, e come risolvere 
una gran parte dei probs.
-- 
regards,
Simon

 ha scritto nel messaggio
news:3J7C9.24126$744.8...@news1.tin.it...



[cut]
qualche mese fa, proprio su questo ng, si era parlato di un problema simile
con access 2000 in rete.. prova a fare una ricerca con google..
HTH
Saluti
--
Stefano Zamboni 
sz...@libero.it
Legge di Biondi:
Se il tuo progetto non funziona, controlla la parte che non ti pareva
importante.

 con access 2000 in rete.. prova a fare una ricerca con google..
si', e avevo richiesto notizie a proposito.
sembrava che i casini sotto win 2000 server fossero riservati a dao,
specie su macchine in cluster.
qui si parla di ado...
mi sorge il dubbio che il problema stia proprio in jet/access.

 DB che saluta tutti c'è sempre.
CLAP, CLAP, CLAP...  :-)
un ugo che ha finalmente trovato un alleato
anti-access...    :-)
ciao
ugo

 attestato tipo ECP, che Dio ce ne scampi e calamaretti.
Noi li chiamiamo:
"quelli che ne sanno abbastanza da essere pericolosi"...
Il bello è che di solito poi non hanno mai fatto niente, loro,...
ciao
ugo

 mi sorge il dubbio che il problema stia proprio in jet/access.
Secondo me il problema è più che altro legato all' "annoso problema"
dell Oplock, per il quale raccomando l'installazione del Sp di win2000
server e la lettura della documentazione Ms.
Prova una ricerca su google:
"opportunistic locking windows 2000 corruption"
...e vedrai.
ciao
ugo

 risolvere il problema.
per un mdb 99 su 100 è un'interruzione della rete, che va da guasto del
cavetto di rete alla donna delle pulizie che spegne i PC, passando per i
cali di tensione.
Tutte cose che non si possono intrappolare in un On Error :)
Altre cause (specie i virus) non le prenderei nemmeno in considerazione.
Ciao

 ha scritto