527 messaggi dal 18 dicembre 2012
Ciao a tutti
Ho un problema con la connessione ad un db mysql. Da quando sono passato su una macchina a 64bit ogni volta che provo ad accedere al db ricevo questo errore:

ERROR [IM002] [Microsoft][Driver Manager ODBC] Nome origine dati non trovato e driver predefinito non specificato.

Questa è la stringa di connessione:

<connectionStrings>
<add connectionString="Driver={MySQL ODBC 5.2 ANSI Driver};server=localhost;database=ordarch;uid=root;pwd=admin" name="SimpleProviderConnectionString" providerName="System.Data.Odbc"/>
<add connectionString="server=localhost;database=ordarch;uid=root;pwd=admin;Allow Zero Datetime=true" name="ConnectionStringConnectorNet" providerName="System.Data.Odbc"/>
</connectionStrings>

Ho letto mille articoli, provato tutte le possibili soluzioni, ma nulla.

Grazie mille
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,
probabilmente il provider ODBC non è installato nella sua versione a 64 bit, quindi potresti risolvere portando l'application pool a girare a 32 bit.

Tuttavia, nulla di questo è necessario perché non dovresti usare il provider ODBC in un'applicazione .NET. Esiste un'alternativa di gran lunga migliore: il MySql Connector per .NET (si tratta di un provider manager - devi semplicemente mettere la dll nella tua cartella /bin).

Lo puoi facilmente aggiungere alla tua soluzione anche usando Nuget (abituati ad usarlo, perché ti permetterà di installare facilmente tanti altri pacchetti).
https://www.nuget.org/packages/MySql.Data/6.8.3

ciao,
Moreno

Enjoy learning and just keep making
527 messaggi dal 18 dicembre 2012
Ciao Moreno
grazie per la risposta.
Già provato ad utilizzare la dll, ma ho lo stesso problema
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
fai vedere la tua nuova connection string, ci dev'essere un errore.
Dovresti modificarla come segue:
<add connectionString="server=localhost;database=ordarch;uid=root;pwd=admin" name="SimpleProviderConnectionString" providerName="MySql.Data.MySqlClient"/>

Rimuovi tutte le altre connection strings, ormai non servono più.

Se continua a dire che MySql.Data.MySqlClient non esiste, assicurati di aver copiato la dll nella cartella bin. Questo avviene automaticamente se hai ottenuto il pacchetto da NuGet.

ciao,
Moreno

Enjoy learning and just keep making
527 messaggi dal 18 dicembre 2012
Ciao Moreno
ho risolto utilizzando la ddl di mysql.
Anche se non capisco perchè non funziona con Odbc
Grazie mille

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.