Discussione:
Da Access A MySql
(troppo vecchio per rispondere)
Enrico Pietrobon
2008-10-15 09:56:09 UTC
Permalink
Ciao a tutti.
Spero che il mio problema sia già stato affrontato.

Ho un db in Access con tutte le tabelle su un server. Le tabelle per ora
sono in formato access.
All'apertura del Applicativo (MDE) vengono collegate le tabelle tramite la
funzione
DoCmd.TransferDatabase A_ATTACH, "Microsoft Access" ecc.ecc.

Il tutto funziona egregiamente, se non che il db inizia ad accusare la
lentezza di tale collegamento.
Molte maschere con query pesanti si aprono addirittura dopo una decina di
secondi sui client.

Soluzione. Passa tutte le tabelle su MySql.

Diciamo che il passaggio è stato abbastanza indolore.
Le tabelle sono state importate senza problemi in MySql.

e poi collegate al DB con la stessa istruzione DoCmd.TransferDatabase

Le queey che prima ci mettevano 10 secondi in questo modo sono praticamente
immediate.
Ma il problema non è risolto.

Tengo a precisare che l'apertura delle tabelle sia Access (prima) che
(mySql) ora avviene tramite ADO.
Set DBL = Application.CurrentProject.Connection
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic

1° problema
Su alcune tabelle, e non riesco a capire come e quando, ogni volta che cerco
di fare un UPDATE mi viene restituito questo errore.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."

Ma io sono l'unico utente che sta lavorando su questa tabella
L'istruzione utilizzata è questa.
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
T1!TipoInvio = N1
T1.Update
T1.Close

Non riesco proprio a capire come mai.
Anche perchè su alcune tabelle non me lo fà.


Potrei rivedere tutto e non collegare le tabelle utilizzando mysql
direttamente da server
Ma in questo caso dovrei riscrivere interamente il codice, in quanto la
semplice query
"SELECT * FROM [IMPOSTAZIONI]"
dovrebbe essere sostituita con
"SELECT * FROM `IMPOSTAZIONI`"

per non parlare poi delle query con date ecc.ecc.

A complicare il tutto è che molti clienti con pochi dati, non utilizzeranno
MYsql ma continueranno ad utilizzare le tabelle Access.
Quindi quella del collegamento è la miglior soluzione per entrambi i
sistemi.
Peccato che non riesca a capire l'errore...


Grazie a tutti.
Enrico Pietrobon
Oscar Manfredini
2008-10-15 10:42:01 UTC
Permalink
"Enrico Pietrobon"
Post by Enrico Pietrobon
Le queey che prima ci mettevano 10 secondi in questo modo sono
praticamente
Post by Enrico Pietrobon
immediate.
Ma il problema non è risolto.
Tengo a precisare che l'apertura delle tabelle sia Access (prima) che
(mySql) ora avviene tramite ADO.
Set DBL = Application.CurrentProject.Connection
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
1° problema
Su alcune tabelle, e non riesco a capire come e quando, ogni volta che cerco
di fare un UPDATE mi viene restituito questo errore.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ma io sono l'unico utente che sta lavorando su questa tabella
L'istruzione utilizzata è questa.
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
T1!TipoInvio = N1
T1.Update
T1.Close
Non riesco proprio a capire come mai.
Le tabelle contengono tutte una colonna TimeStamp?
Mi butto, ma considera che io utilizzo MS SQLSVR e non conosco MySQL.

...
Enrico Pietrobon
2008-10-15 11:06:05 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Le queey che prima ci mettevano 10 secondi in questo modo sono
praticamente
Post by Enrico Pietrobon
immediate.
Ma il problema non è risolto.
Tengo a precisare che l'apertura delle tabelle sia Access (prima) che
(mySql) ora avviene tramite ADO.
Set DBL = Application.CurrentProject.Connection
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
1° problema
Su alcune tabelle, e non riesco a capire come e quando, ogni volta che
cerco
Post by Enrico Pietrobon
di fare un UPDATE mi viene restituito questo errore.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ma io sono l'unico utente che sta lavorando su questa tabella
L'istruzione utilizzata è questa.
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
T1!TipoInvio = N1
T1.Update
T1.Close
Non riesco proprio a capire come mai.
Le tabelle contengono tutte una colonna TimeStamp?
Mi butto, ma considera che io utilizzo MS SQLSVR e non conosco MySQL.
...
Utilizzavo anche io Ms Sql Server...
Purtroppo Costa di più che tutto l'appicativo.
Quindi ho dovuto cambiare...

Questa della colonna TimeStamp mi manca?
Ho letto che è una colonna dove viene memorizzata la data e l'ora del ultimo
Update..
Ma cosa si intende ?
Oscar Manfredini
2008-10-15 11:36:12 UTC
Permalink
"Enrico Pietrobon"
Post by Enrico Pietrobon
Utilizzavo anche io Ms Sql Server...
Purtroppo Costa di più che tutto l'appicativo.
Quindi ho dovuto cambiare...
?
E' no: la versione Express è Free.

Ciao: Oscar
Enrico Pietrobon
2008-10-15 14:39:30 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Utilizzavo anche io Ms Sql Server...
Purtroppo Costa di più che tutto l'appicativo.
Quindi ho dovuto cambiare...
?
E' no: la versione Express è Free.
Ciao: Oscar
Non sapevo che ci fosse la versione Express...
Ho provato a cercare e ho trovato sia la 2005 che la 2008

Per curiosità ho installato la 2008...
Ragazzi che casino.
MySql è molto più leggero e performante.
Inoltre strapieno di Tools.

MA!!!!


Enrico Pietrobon
Oscar Manfredini
2008-10-15 17:34:27 UTC
Permalink
"Enrico Pietrobon"
Post by Enrico Pietrobon
Non sapevo che ci fosse la versione Express...
Ho provato a cercare e ho trovato sia la 2005 che la 2008
Per curiosità ho installato la 2008...
Ragazzi che casino.
MySql è molto più leggero e performante.
Inoltre strapieno di Tools.
Molto più performante mySql: ma stai scherzando?
D'accordo invece sulla pesantezza ... problema connaturato a M$.

Ciao: Oscar
Enrico Pietrobon
2008-10-15 18:31:36 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Non sapevo che ci fosse la versione Express...
Ho provato a cercare e ho trovato sia la 2005 che la 2008
Per curiosità ho installato la 2008...
Ragazzi che casino.
MySql è molto più leggero e performante.
Inoltre strapieno di Tools.
Molto più performante mySql: ma stai scherzando?
D'accordo invece sulla pesantezza ... problema connaturato a M$.
Ciao: Oscar
Dunque...
Ho provato ad installare Mysql...
Ci ho messo circa 20 Minuti.


Ho provato ad installare SQLServer
Ho iniziato oggi pomeriggio e non sono nemmeno riuscito a collegare le
tabelle.

sono sicuro che il problema sia mio. di questo sono assolutamente certo.
Ma se ho problemi io che sono 25 anni che lavoro in questo settore..
Figurati un utente medio.

In Mysql ho collegato solo le tabelle nemmeno le viste.
Ho lasciato le query nel applicativo Access e ti assicuro che la
velocità si può vedere tranquillamente ad occhio nudo.

Appena riusciro a risolvere il problema SQL proverò acnhe con questo.

Enrico Pietrobon
Oscar Manfredini
2008-10-15 20:49:49 UTC
Permalink
"Enrico Pietrobon" <
Post by Enrico Pietrobon
Post by Oscar Manfredini
Molto più performante mySql: ma stai scherzando?
D'accordo invece sulla pesantezza ... problema connaturato a M$.
Ho provato ad installare SQLServer
Ho iniziato oggi pomeriggio e non sono nemmeno riuscito a collegare le
tabelle.
sono sicuro che il problema sia mio. di questo sono assolutamente certo.
Ma se ho problemi io che sono 25 anni che lavoro in questo settore..
Figurati un utente medio.
Ma un Server di Database è un prodotto che installa un professionista, cosa
c'entra un utente medio?
E comunque non è particolarmente onerosa l'installazione di M$ SQLSVR: che
mi perdo?
Post by Enrico Pietrobon
In Mysql ho collegato solo le tabelle nemmeno le viste.
Ho lasciato le query nel applicativo Access e ti assicuro che la
velocità si può vedere tranquillamente ad occhio nudo.
?
non ti seguo: mi pareva che tu sostenessi che MySQL sia più veloce di MS
SQLSVR.
Questa è un'affermazione azzardata: il Server M$ è pesante, ok, ma il motore
ha performances e features al Top (e scala molto bene all'aumentare dei
processori).
Non conosco MySQL, ma più veloce "della luce" non si può...

Ciao: Oscar
Enrico Pietrobon
2008-10-15 21:02:16 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon" <
Post by Enrico Pietrobon
Post by Oscar Manfredini
Molto più performante mySql: ma stai scherzando?
D'accordo invece sulla pesantezza ... problema connaturato a M$.
Ho provato ad installare SQLServer
Ho iniziato oggi pomeriggio e non sono nemmeno riuscito a collegare le
tabelle.
sono sicuro che il problema sia mio. di questo sono assolutamente certo.
Ma se ho problemi io che sono 25 anni che lavoro in questo settore..
Figurati un utente medio.
Ma un Server di Database è un prodotto che installa un professionista, cosa
c'entra un utente medio?
E comunque non è particolarmente onerosa l'installazione di M$ SQLSVR: che
mi perdo?
Post by Enrico Pietrobon
In Mysql ho collegato solo le tabelle nemmeno le viste.
Ho lasciato le query nel applicativo Access e ti assicuro che la
velocità si può vedere tranquillamente ad occhio nudo.
?
non ti seguo: mi pareva che tu sostenessi che MySQL sia più veloce di MS
SQLSVR.
Questa è un'affermazione azzardata: il Server M$ è pesante, ok, ma il motore
ha performances e features al Top (e scala molto bene all'aumentare dei
processori).
Non conosco MySQL, ma più veloce "della luce" non si può...
Ciao: Oscar
MA!
Sono sicuro, anzi sono certo, che Ms Sql Express sia molto potente..
una cosa è sicura. Io è da oggi pomeriggio che sto tentando di
installarlo. e sono riuscito solo ora a configurarlo.

Inoltre ora ho importato le tabelle da un database access, e non riesco
nemmeno ad inserire una chiave primaria e salvarla.
Continua a darmi errori su errori.

My sql 20 minuti dopo era tutto pronto e installato, tabelle access
importate e modificate.

Non sto dicendo che uno sia meglio dell'altro, è che microsoft come
sempre se può complicare le cose lo fà più che volentieri.

Utilizzare un prodotto piuttosto che un altro in questo momento per mè è
uguale, quando mi recherò dal cliente in 10 Minuti installero MYSQL in 2
ore installero SQLServer.

Se dovessi riuscirci tamise SQLServer bene se dovessi riuscirci con
MySql bene uguale.

Ma trovo, sia l'installazione di MS SQL sia la sua configurazione, sia
l'importazione delle tabelle un gran casino.
E non ho nemmeno iniziato a verificare le problematice del interfaccia
Access to MS SQl......

figuriamoci.


Enrico Pietrobon
Fabrizio Conti (Panathos)
2008-10-17 15:53:05 UTC
Permalink
Post by Enrico Pietrobon
Post by Oscar Manfredini
Post by Oscar Manfredini
Molto più performante mySql: ma stai scherzando?
Probabilmente no, o quantomeno credo sia più economico avere un mysql
molto performante, che un sql server di pari velocità. Almeno fino
alla versione 2005, ora non saprei.

Le gabole stanno nel fatto che mysql è compilabile su macchine 64 bit
fatte anche hoc, volendo; dove il SO è gratuito ed il costo è solo
quello hardware (il costo del sistemista c'è in entrambe le soluzioni
ovviamente :-)).
Poi siccome i 64 bit permettono molto spazio di indirizzamento per la
RAM, magari si largheggia con gli indici in memoria; financo a tenerci
tabelle grosse replicate per query tipo datawarehousing oppure -
abbastanza di recente per mysql- parcheggiare in RAM tablespace
appositi per differenziare le tabelle "piccole e veloci" da quelle
"grosse e lente".
Post by Enrico Pietrobon
Post by Oscar Manfredini
Ma un Server di Database è un prodotto che installa un professionista, cosa
c'entra un utente medio?
La risposta mi pare evidente: sempre più "utenti medi" hanno necessità
di usare rdbms, al di fuori delle grosse realtà aziendali. E credo che
uno dei "primi approcci" sia costituito proprio da MS Access, che
rimane più insuperabile di un tonno in quello che permette di fare.

Inoltre una applicazione con poche pippe sistemistiche, aldilà del
fantomatico utente medio, ha i suoi comodi vantaggi.
Due mesi fa per migrare un db mysql di più di 200 tabelle dalla
versione 4 alla versione 5 di mysql ho impiegato sì un paio d'ore di
tempo-macchina; ma pochissima fatica e pochi clic assolutamente
"umani": su winpenpack.com c'è tutto l'occorrente già impacchettato
(pampa_wpp per mysql, x-sqlyog per il tool di replica e migrazione).
Col bonus di avere ottenuto anche una replica del db aziendale sul mio
disco esterno; e posso usare questa replica in modalità no-install su
qualunque pc con Windows XP.
Post by Enrico Pietrobon
E non ho nemmeno iniziato a verificare le problematice del interfaccia
Access to MS SQl......
Per far funzionare bene MySql con Access le "regole" non sono tante:

1) obbligo di primary key in ogni tabella.

2) obbligo, in ogni tabella, di campo timestamp con valore default
impostato a Null (ver.4) oppure CURRENT_TIMESTAMP per la versione 5.
Questo per permettere al driver ODBC di identificare univocamente ogni
riga della tabella.

3) usare MyODBC aggiornato (3.51.24 dovrebbe essere l'ultima
versione).

4) Non usare la conversione, configurabile in MyODBC, "converti BigInt
in Int".

5) Ogni volta che fai una qualsiasi modifica alle tabelle, devi
riallegarle a Access (ovviamente occorre una routine che rialleghi da
sola tutte le tabelle e le query PT appartenenti a un determinato DSN,
per lavorare comodi)

6) Usa almeno la versione 5 di MySQL, con myODBC aggiornato.

Fatte salve queste cose, MySQL funziona piuttosto bene.

L'errore in cui eri incappato, riguardante un altro utente "fantasma",
era probabilmente dovuto all'impossibilità del driver ODBC di
identificare le righe da elaborare; in particolare rivedrei il campo
timestamp della tabella (oltre alla versione che usi di MyODBC).

ciao,
Panathos
Oscar Manfredini
2008-10-18 06:46:19 UTC
Permalink
"Fabrizio Conti (Panathos)"
Post by Oscar Manfredini
Post by Oscar Manfredini
Molto più performante mySql: ma stai scherzando?
Probabilmente no, o quantomeno credo sia più economico avere un mysql
molto performante, che un sql server di pari velocità. Almeno fino
alla versione 2005, ora non saprei.

(cut)
Non credo assolutamente che le performances di MySQL possano essere
paragonate sui 'grandi' DB (e carichi di lavoro) al Server M$.

SQL Server, già con la release 2000 era un prodotto maturo "verso l'alto".
Supporto del Clustering di failover, multithreading per la gestione
dell'hardware multiprocessore (fino a 32 processori e 64 GB di RAM),
distribuzione dei logs, Analysis Services per Data Warehousing, etc.
Il "contro" di questo orientamento è la pesantezza: spesso inaccettabile per
installazioni monoutenti.

Prodotti come FireBird o MySQL volano (sicuramente) più basso, ma hanno il
vantaggio d'essere "leggeri".
Il rovescio della medaglia è che non sono prodotti da Microsoft: quindi
possono essere all'ordine del giorno problemi di mapping di datatypes (anche
importanti) e altri bugs nella connettività ODBC verso Access. E non ci si
deve aspettare che questi guai vengano risolti dai Service Packs.
Post by Oscar Manfredini
Ma un Server di Database è un prodotto che installa un professionista, cosa
c'entra un utente medio?
La risposta mi pare evidente: sempre più "utenti medi" hanno necessità
di usare rdbms, al di fuori delle grosse realtà aziendali. E credo che
uno dei "primi approcci" sia costituito proprio da MS Access, che
rimane più insuperabile di un tonno in quello che permette di fare.
Che utenti "medi" (ovvero NON sviluppatori) abbiano necessità d'installare
Server di Database proprio non mi risulta.
Un utente medio, generalmente, nemmeno sa cosa sia un Database o
cmq qualcosa di diverso da un tabellone tipo Excel.

Ciao: Oscar
Fabrizio Conti (Panathos)
2008-10-20 07:15:46 UTC
Permalink
Post by Oscar Manfredini
"Fabrizio Conti (Panathos)"
Post by Oscar Manfredini
Molto più performante mySql: ma stai scherzando?
Non credo assolutamente che le performances di MySQL possano essere
paragonate sui 'grandi' DB (e carichi di lavoro) al Server M$.
Il discorso era differente: riguardava la pura velocità di esecuzione
(percepita dall'OP) in una situazione non certo estrema.
Post by Oscar Manfredini
SQL Server, già con la release 2000 era un prodotto maturo "verso l'alto".
Supporto del Clustering di failover, multithreading per la gestione
dell'hardware multiprocessore (fino a 32 processori e 64 GB di RAM),
distribuzione dei logs, Analysis Services per Data Warehousing, etc.
Il "contro" di questo orientamento è la pesantezza: spesso inaccettabile per
installazioni monoutenti.
Queste sono features, che non servono a tutti; e con la velocità di
esecuzione c'entrano relativamente.
Post by Oscar Manfredini
La risposta mi pare evidente: sempre più "utenti medi" hanno necessità
di usare rdbms, al di fuori delle grosse realtà aziendali. E credo che
uno dei "primi approcci" sia costituito proprio da MS Access, che
rimane più insuperabile di un tonno in quello che permette di fare.
Che utenti "medi" (ovvero NON sviluppatori) abbiano necessità d'installare
Server di Database proprio non mi risulta.
Un utente medio, generalmente, nemmeno sa cosa sia un Database o
cmq qualcosa di diverso da un tabellone tipo Excel.
Secondo me fra "utenti medi" e "non sviluppatori" c'è tutta una serie
di sfumature. Cmq
Post by Oscar Manfredini
Ciao: Oscar
Oscar Manfredini
2008-10-20 08:30:24 UTC
Permalink
"Fabrizio Conti (Panathos)"
Post by Oscar Manfredini
SQL Server, già con la release 2000 era un prodotto maturo "verso l'alto".
Supporto del Clustering di failover, multithreading per la gestione
dell'hardware multiprocessore (fino a 32 processori e 64 GB di RAM),
distribuzione dei logs, Analysis Services per Data Warehousing, etc.
Il "contro" di questo orientamento è la pesantezza: spesso inaccettabile per
installazioni monoutenti.
Queste sono features, che non servono a tutti; e con la velocità di
esecuzione c'entrano relativamente.
Beh, inzomma ... il multithreading per hardware multiprocessore (oggi assai
attuale), con la velocità d'esecuzione del codice SQL c'entra eccome.
Magari cercherò qualche benchmark comparativo sul web (ma è difficile
trovarne al di sopra delle parti): può darsi effettivamente che su tabelle
di piccole dimensioni MySQL sia più agile.
Post by Oscar Manfredini
Che utenti "medi" (ovvero NON sviluppatori) abbiano necessità d'installare
Server di Database proprio non mi risulta.
Un utente medio, generalmente, nemmeno sa cosa sia un Database o
cmq qualcosa di diverso da un tabellone tipo Excel.
Secondo me fra "utenti medi" e "non sviluppatori" c'è tutta una serie
di sfumature. Cmq
Fammi degli esempi: forse sono io troppo soggettivo.

Ciao: Oscar
Fabrizio Conti (Panathos)
2008-10-20 13:40:07 UTC
Permalink
Post by Fabrizio Conti (Panathos)
Queste sono features, che non servono a tutti; e con la velocità di
esecuzione c'entrano relativamente.
Beh, inzomma ... il multithreading per hardware multiprocessore (oggi assai
attuale), con la velocità d'esecuzione del codice SQL c'entra eccome.
Magari cercherò qualche benchmark comparativo sul web (ma è difficile
trovarne al di sopra delle parti): può darsi effettivamente che su tabelle
di piccole dimensioni MySQL sia più agile.
Sì diciamo che se si usa il formato 'myisam' (che non gestisce
relazioni) per le tabelle, mysql è piuttosto veloce ed è "comodo" dal
punto di vista sistemistico. Se occorre un 'accessoriato' contenitore
attivo di tabelle esterne per applicazioni Access, mysql secondo me è
una ottima scelta.
Poi vabbè, chiaramente ognuno sa cosa deve farci col suo db, la
tabella più grossa che ho stazza circa 700.000 record e sono
soddisfatto delle prestazioni. Ho cercato anche io delle comparazioni
attendibili ma ho trovato solo cose generiche. E non è solo questione
di "commercial vs open source", perché anche comparare mysql con
postgresql può diventare difficile.
Post by Fabrizio Conti (Panathos)
Secondo me fra "utenti medi" e "non sviluppatori" c'è tutta una serie
di sfumature. Cmq
Fammi degli esempi: forse sono io troppo soggettivo.
Avevo scritto un msg che riprendeva questo, dovresti trovarlo nello
stesso thread.

Brevemente, credo che i terabytes di roba scaricata (principalmente
via p2p, ma è un presupposto allegramente discutibile :-)) dagli
"utenti medi" introducano problematiche di gestione non proprio
banali... e sarebbe comodissimo se ci fosse un gestore centralizzato,
interrogabile e... facilmente gestibile per tutti i dati e metadati
che stanno sugli hard-disk degli "utenti medi", a servizio degli
sviluppatori per integrarlo nelle applicazioni; e ad uso e consumo
degli utenti.

Gli indicizzatori tipo Google Desktop e Copernic risolvono solo una
parte del problema; perché sarebbe comodissimo poter inserire tag e
creare meta-cartelle oltre ad avere i file indicizzati. Qualunque
programma installi, saprebbe già dove andare a cercare che cosa.

ciao,
Panathos
Oscar Manfredini
2008-10-20 14:54:23 UTC
Permalink
"Fabrizio Conti (Panathos)"
Post by Oscar Manfredini
Fammi degli esempi: forse sono io troppo soggettivo.
Avevo scritto un msg che riprendeva questo, dovresti trovarlo nello
stesso thread.

Brevemente, credo che i terabytes di roba scaricata (principalmente
via p2p, ma è un presupposto allegramente discutibile :-)) dagli
"utenti medi" introducano problematiche di gestione non proprio
banali... e sarebbe comodissimo se ci fosse un gestore centralizzato,
interrogabile e... facilmente gestibile per tutti i dati e metadati
che stanno sugli hard-disk degli "utenti medi", a servizio degli
sviluppatori per integrarlo nelle applicazioni; e ad uso e consumo
degli utenti.

Gli indicizzatori tipo Google Desktop e Copernic risolvono solo una
parte del problema; perché sarebbe comodissimo poter inserire tag e
creare meta-cartelle oltre ad avere i file indicizzati. Qualunque
programma installi, saprebbe già dove andare a cercare che cosa.
Ho visto ora anche l'altro post.

Sì, il discorso è interessante e hai molte ragioni, tanto è vero che M$
voleva includere in VISTA il motore di SQL Server a livello di file system.

Però se facciamo un discorso attuale e aziendale (il contesto di Pietrobon)
IMHO non esiste un utente medio che abbia necessità d'installare un Server
di database. Il contesto è sempre quello del fornitore di software
(sviluppatore o installatore) che se ne occupa.

Sicuramente se parliamo di monoutenze la pesantezza del Server M$ è
deprecabile, ma in un contesto che preveda il classico PC Server è una
soluzione che non da problemi.

Ciao: Oscar

Fabrizio Conti (Panathos)
2008-10-20 07:36:54 UTC
Permalink
On 17 Ott, 17:53, "Fabrizio Conti (Panathos)" <***@gmail.com>
wrote:

Scusa, riprendo il discorso in quanto mi è partito il msg mentre lo
stavo componendo; riguardo la necessità di un "utente medio" di
installare o usare un rdbms. Il punto del mio discorso è che oggi
tutti noi, o quasi, abbiamo decine di migliaia di files fra audio,
video, immagini, documenti vari, etc; sparsi probabilmente su più
dischi (hd interni, esterni, cd, dvd, schede sd, etc.).
I programmi che gestiscono questi tipi di file nei migliori dei casi
si fanno la "propria" library. Così, se installi Winamp, Itunes,
Foobar, Picasa, Photoshop, GIMP, Office, OpenOffice (per limitarci a
quello che può interessare il fantomatico "utente medio"; che forse
Excel non lo ha mai visto ma in compenso è abile a fare video col
cellulare, modificarlo col pc e metterlo su youtube); vai giù di
scansioni sulle periferiche.

Usare un sistema centralizzato e accessibile, per contenere le
informazioni sui file e meta-tag, sarebbe già un primo passo. Magari
poi i vari programmi potrebbero solo AGGIUNGERE alle 'tabelle' ciò che
gli serve. Ad es. un prg per mixare mp3 potrebbe scansionare i brani
per aggiungere al db solo i bpm; invece di rifarsi una sua copia di
tutta la base dati.
Se poi questo sistema fosse integrato nel filesystem per l'utente
potrebbe essere ancora meglio (pure Microsoft l'ha capito e difatti
sta lavorando a WinFS).

Cmq ad oggi mi risulta che solo Amarok possa integrarsi con MySQL. E
siccome tutto questo con Access c'entra molto relativamente, ora che
ho spiegato l'affermazione che ho scritto direi che posso chiudere.

ciao,
Panathos
Enrico Pietrobon
2008-10-15 11:19:03 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Le queey che prima ci mettevano 10 secondi in questo modo sono
praticamente
Post by Enrico Pietrobon
immediate.
Ma il problema non è risolto.
Tengo a precisare che l'apertura delle tabelle sia Access (prima) che
(mySql) ora avviene tramite ADO.
Set DBL = Application.CurrentProject.Connection
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
1° problema
Su alcune tabelle, e non riesco a capire come e quando, ogni volta che
cerco
Post by Enrico Pietrobon
di fare un UPDATE mi viene restituito questo errore.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ma io sono l'unico utente che sta lavorando su questa tabella
L'istruzione utilizzata è questa.
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
T1!TipoInvio = N1
T1.Update
T1.Close
Non riesco proprio a capire come mai.
Le tabelle contengono tutte una colonna TimeStamp?
Mi butto, ma considera che io utilizzo MS SQLSVR e non conosco MySQL.
...
Comunque sia.. Campo aggiunto ad una tabella per verificarne il
funzionamento.
Ora dopo una modifica attraverso MySql Administrator effettivamente
inserisce automaticamente la data e l'ora.

Bè prima di tutto il messaggio di errore è sempre uguale.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."


Ho aperto poi la tabella collegata in questione direttamente da Access e
nemmeno da li riesco ad aggiornare i campi..

Ho verificato i permessi direttamente da MySql Administrator, ed è tutto
apposto...


Muble Muble
Enrico Pietrobon
Oscar Manfredini
2008-10-15 11:37:51 UTC
Permalink
"Enrico Pietrobon"
Post by Enrico Pietrobon
Comunque sia.. Campo aggiunto ad una tabella per verificarne il
funzionamento.
Ora dopo una modifica attraverso MySql Administrator effettivamente
inserisce automaticamente la data e l'ora.
Bè prima di tutto il messaggio di errore è sempre uguale.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ho aperto poi la tabella collegata in questione direttamente da Access e
nemmeno da li riesco ad aggiornare i campi..
Hai ricollegato la tabella, dopo aver aggiunto il TimeStamp?
La tabella contiene una chiave primaria?

Ciao: Oscar
Enrico Pietrobon
2008-10-15 11:37:46 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Comunque sia.. Campo aggiunto ad una tabella per verificarne il
funzionamento.
Ora dopo una modifica attraverso MySql Administrator effettivamente
inserisce automaticamente la data e l'ora.
Bè prima di tutto il messaggio di errore è sempre uguale.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ho aperto poi la tabella collegata in questione direttamente da Access e
nemmeno da li riesco ad aggiornare i campi..
Hai ricollegato la tabella, dopo aver aggiunto il TimeStamp?
La tabella contiene una chiave primaria?
Ciao: Oscar
Tabella Ricollegata e contiene una chiave primaria...
Operazioni già effettuate.


Enrico Pietrobon
Enrico Pietrobon
2008-10-15 11:34:31 UTC
Permalink
Post by Oscar Manfredini
"Enrico Pietrobon"
Post by Enrico Pietrobon
Le queey che prima ci mettevano 10 secondi in questo modo sono
praticamente
Post by Enrico Pietrobon
immediate.
Ma il problema non è risolto.
Tengo a precisare che l'apertura delle tabelle sia Access (prima) che
(mySql) ora avviene tramite ADO.
Set DBL = Application.CurrentProject.Connection
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
1° problema
Su alcune tabelle, e non riesco a capire come e quando, ogni volta che
cerco
Post by Enrico Pietrobon
di fare un UPDATE mi viene restituito questo errore.
"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."
Ma io sono l'unico utente che sta lavorando su questa tabella
L'istruzione utilizzata è questa.
S = "Select * From Impostazioni"
T1.Open S, DBL, adOpenKeyset, adLockOptimistic
T1!TipoInvio = N1
T1.Update
T1.Close
Non riesco proprio a capire come mai.
Le tabelle contengono tutte una colonna TimeStamp?
Mi butto, ma considera che io utilizzo MS SQLSVR e non conosco MySQL.
...
La cosa si fà sempre più strana...
Solo alcuni campi delle tabelle non li lascia aggiornare.
Altri si.
Questa poi è proprio bella...

Ho eliminato Il campo da MySqlAdministrator
e l'ho reinserito. Ora me lo aggiorna dalle tabelle..
Ma da codice... è sempre la stessa storia...

"Il modulo di gestione di database Microsoft Jet ha interrotto
l'elaborazione. Un altro utente sta tentando contemporaneamente di
modificare gli stessi dati."

Ho notato un altra cosa, e ho capito quando mi dà l'errore..
Quando io memorizzo all'inerno del campo un valore uguale a quello già
memorizzato....

Se un campo contiene 1 e ci rimemorizzo 1 mi dà l'errore.
Se un campo contiene 1 e ci memorizzo 2 funziona...............

Sto diventando matto.



Enrico Pietrobon
Oscar Manfredini
2008-10-15 17:36:25 UTC
Permalink
"Enrico Pietrobon" <
Post by Enrico Pietrobon
Ho notato un altra cosa, e ho capito quando mi dà l'errore..
Quando io memorizzo all'inerno del campo un valore uguale a quello già
memorizzato....
Se un campo contiene 1 e ci rimemorizzo 1 mi dà l'errore.
Se un campo contiene 1 e ci memorizzo 2 funziona...............
Sto diventando matto.
Mi pare che SandroBi avesse pubblicato su quest'area un post in cui
segnalava questo problema.
Credo che facendo una ricerca con google potresti rintracciarlo...
Comunque considera che la connettività ODBC per Access è testata a fondo
solo con M$ SqlSvr; in genere chi prova altri motori di Database incontra
spesso situazioni seccanti.

Ciao: Oscar
Continua a leggere su narkive:
Loading...