Condividi tramite

Access e MySql, errore 3146 ODBC: chiamata non riuscita.

Anonimo
2011-02-07T21:29:56+00:00

Buonasera,

Ho un Fe Access con tabelle collegate ad un Be MySql tramiteODBC 5.1 Driver in configurazione standard.

Trascorsi 2 minuti dall’ultimo accesso ad una qualsiasi tabella collegata, al tentativo successivo di accesso, non mi apre la tabella e mi produce il seguente errore:

[MySQL][ODBC 5.1 Driver][mysqld-5.0.77-log]MySQL server has gone away (#2006)

errore msaccess MySQL server has gone away (#2006)

ODBC: chiamata non riuscita. (3146).

Per riaccedere alle tabelle devo chiudere access e riavviare il Fe.

Ho pensato che eliminando fisicamente le tabelle dal Fe e ricollegandole al momento opportuno la cosa potesse funzionare ed ho impostato sulla mia maschera il seguente codice:

Option Compare Database

Dim wk As Workspace

Dim cn As Connection

Dim strConnect As String

Private Sub Form_Load()

Dim Mytdf As TableDef

   Set wk = DBEngine.CreateWorkspace("ODBCDirect", "", "", dbUseODBC)

            strConnect = "ODBC;DATABASE=My_DATABASE;UID=My_UID;PWD=My_PWD;DSN=My_DSN"

   Set cn = wk.OpenConnection("Connect1", dbDriverNoPrompt, _

            False, strConnect)

   Set Mytdf = CurrentDb.CreateTableDef("My_Table")

           Mytdf.Connect = strConnect

           Mytdf.SourceTableName = "My_Table"

           CurrentDb.TableDefs.Append Mytdf

   Me.RecordSource = "My_Table"

End Sub

Private Sub Form_Unload(Cancel As Integer)

   CurrentDb.TableDefs.Delete "My_Table"

   cn.Close

   wk.Close

End Sub 

Purtroppo non è cambiato nulla, trascorsi i 2 minuti scade la sessione di collegamento al server e vengo scacciato fuori.

Sono alla ricerca di una soluzione, non credo di essere il solo che si sia trovato di fronte a questo problema, spero che qualcuno possa darmi una mano a risolvere.

Grazie anticipatamente

Liberato

Microsoft 365 e Office | Accesso | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

8 risposte

Ordina per: Più utili
  1. Anonimo
    2011-03-13T01:13:16+00:00

    Ciao Matteo,

    si il mio db è presso un provider, anche a me in locale va tutto bene.

    Sicuramente è il mio provider che chiude la connessione dopo 2  minuti di inattività, questo non rappresenterebbe un problema se io, ogni qualvolta apro una tabella collegata, riuscissi ad aprire e chiudere la connessione con il server, anche se chiudo la tabella e anche se fisicamente la rimuovo dal db non mi chiude la connessione solo l'uscita da access e la riapertura del FE ripristina il collegamento.

    Ciao

    Liberato

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2011-03-04T12:01:42+00:00

    Salve Ostantinato,

    grazie per l'interesse e suggerimento, ho scaricato l'ultimo Connettore MySql, confermo che è la versione 5.1.8, ho installato in ambiente SO XP, Office 2003, il mio problema persiste, 120 secondi esatti di inattività sul database e vengo disconnesso.

    Gradirei sia da parte tua che di Net Level ricevere maggiori informazioni a riguardo della vostra configurazione:

    • Sistema operativo
    • versione di access se 2003 o successiva
    • eventuale configurazione del connettore ODBC se diversa da quella standard presentata di default all'installazione
    • se consentito fare nomi delle aziende su questo forum, il nome del vostro provider, in quanto il sospetto che ho è che l'impostazione della disconnessione a 120 secondi sia una impostazione del servizio offerto dal mio provider a prescindere da access e mysql.

    Io non ho un'altro database MySql presso un'altro provider, ma se mi fater avere le informazioni che ho richiesto, se riprodotto lo stesso ambiente il problema persiste, non esito a comprare un database presso il vostro provider, mi sembra davvero l'ultima cosa che resta da provare.

    Grazie anticipate

    Liberato

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  3. Anonimo
    2011-02-11T11:00:44+00:00

    Ciao Liberato,

    premetto che di MySql ne so veramente poco, comunque facendo una ricerca veloce ho trovato questoHow to fix “MySQL server has gone away” (error 2006) vedi se auita, in ogni caso credo che l'applicazione ACCESS abbia poco a che fare con l'errore che ricevi,

    sicuramente in un forum dedicato a MySql potrai trovare risposte più mirate al tuo problema.

    Ciao

    Giorgio Rancati

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  4. Anonimo
    2011-02-14T17:08:50+00:00

    Ciao Liberato,

    anche io utilizzo access con Mysql ma non ho il tuo problema.

    Forse potrebbe essere qualche impostazione nel Connector/ODBC...!!

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2011-02-11T22:51:09+00:00

    Buonasera Giorgio,

    conoscendo la vostra grande disponibilità e professionalità, quando ho visto che rispondevate alle domande postate dopo la mia ho capito che dovevo andare a porre la mia domanda altrove, così ho fatto, ma fino ad ora, ancora non ho risolto il mio problema.

    Sembra che siano in tanti a lamentarsi di questa cosa e da bel po’ di anni.

    Io intanto una soluzione (temporanea) lo trovata, non è il massimo ma funziona, per chi è interessato:

    ho impostato nelle opzioni avanzate “l’intervallo aggiornamenti ODBC” a 28800 secondi che corrisponde alle 8 ore che è il tempo massimo consentito per una connessione.

    Ho messo sul server remoto una tabellina stupida con un campo e sulla maschera del pannello principale ho impostato una funzione sul timer che ogni 115 secondi consulta la tabella e così mantiene attiva la connessione entro i 2 minuti, non è una soluzione pulita, ma almeno al momento risolvo.

    Ho dato un’occhiata veloce al link che mi hai suggerito, trovo che sia molto interessante, credo che qualcosa di meglio della mia attuale soluzione verrà fuori, approfondisco e poi informerò.

    Infinite grazie

    Liberato

    La risposta è stata utile?

    0 commenti Nessun commento