Newsgroup: it.comp.lang.visual-basic
Titolo: compattare db access da ADO

Ho bisogno di fare la compattazione ed il ripristino del db Access da
VisualBasic perchč dopo aver cancellato i dati , il contatore riprende
dall'ultimo numero dell'ultimo record + 1.
Qualcuno sa come si fa?
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Qualcuno sa come si fa?
devi usare una particolare dll (argomento molto trattato oggi, le dll) che
si chiama google.dll:
http://www.google.it/search?q=compattare+mdb+ado&ie=ISO-8859-1&hl=it&lr=
oppure una simile, che č questa:
http://www.google.it/search?hl=it&ie=ISO-8859-1&q=compattare+mdb+ado+visual+
basic&btnG=Cerca+con+Google&lr=
Scherzo naturalmente, ma c'č una morale...
Ciao, SK
--
La pasienzia non č mai troppo (Totň)
<><><>
Esistono 10 tipi di persone: chi conosce il binario e chi no

 ha scritto nel messaggio
news:5d6e1fcddb5f8a13aa0...@mygate.mailgate.org...


 ...
aodx?
jro!
se proprio si deve dare il codice di cose che verrebbero fuori come primi
risultati della ricerca
Dim jro As JRO.JetEngine
jro = New JRO.JetEngine()
jro.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\nwind.mdb", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\NewNwind.mdb;Jet
OLEDB:Engine Type=5")
Ciao, SK
--
La pasienzia non è mai troppo (Totò)


 dall'ultimo numero dell'ultimo record + 1.
Non mi pare che i database prevedano il numero di record...
Di che contatore si tratta? Che tipo di campo?
Un Long autoincrementante? Se così è, ripartirà da 1 solo dolo aver
eliminato la tabella (non i records nella stessa) e ricreata ...

 jro!
ops :-)

 Qualcuno sa come si fa?
Vedi le altre risposte.
Aggiungo che da Access 2000 in su non č necessario farlo, ma puoi
direttamente impostare il seme del contatore con una query, oppure usando
ADOX.
termoPilucco

 eliminato la tabella (non i records nella stessa) e ricreata ...
Perchč? se elimini tutti i record di una tabella e ripristini ("compatta e
ripristina"), il contatore riparte da 1.
Cia, SK
--
La pasienzia non č mai troppo (Totň)


 ("compatta e ripristina"), il contatore riparte da 1.
Sě, č vero. E mi sembra una grande sciocchezza.
Il perchč si "intende" vero?!

 Il perchè si "intende" vero?!
Questa volta chrdo di aver "inteso".
Ciao, SK
--
La pasienzia non è mai troppo (Totò)


 Il perchč si "intende" vero?!
no.
non intendo. anche perchč non mi sembra una sciocchezza.
--
Salutoni
Sergio
per rispondere... togli il group dall'indirizzo

 non intendo. anche perchè non mi sembra una sciocchezza.
Fermo restando che l'integrità fra i dati (tabelle diverse) debba essere in
qualche modo gestita e che quindi non vi sia nulla che facca riferimento a
ID scomparsi (prima ancora dell'azzeramento del contatore), l'automatico
incremento dello stesso potrebbe far venir voglia di usarlo come
contatore/numero progressivo e univoco. Al suo azzeramento ci si troverebbe
in braghe di tela perchè ripartirebbe da 1. Non è certo pratica corretta, ma
meglio sarebbe se l'eventuale azzeramento del contatore potesse essere un
comando esplicito.
Perchè quindi questo automatismo e non quello che tira indietro di 1 quando
elimino il record con l'ID più alto?

 quando elimino il record con l'ID piů alto?
credo che sia per lo stesso motivo per cui un record eliminato non viene
immediatamente rimosso ma solo flaggato: un risparmio di tempo.
