13 messaggi dal 28 maggio 2018
Ciao a tutti
Ho installato sul mio pc MySql 8.0
Questa è la stringa di connessione che utilizzo per accedere:
<add connectionString="DRIVER={MySQL ODBC 8.0 ANSI Driver};DESC=;DATABASE=cofscarldb01;SERVER=localhost;UID=root;PASSWORD=admin;PORT=3306;SOCKET=;OPTION=3;STMT=;" name="SimpleProviderConnectionString" providerName="System.Data.Odbc" />

Quando provo ad accedere ricevo questa eccezione:
{"ERROR [IM002] [Microsoft][Driver Manager ODBC] Nome origine dati non trovato e driver predefinito non specificato."}

Ho provato mille altre stringhe di connessione ma nulla di nulla.
Sto impazzendo!!!
Grazie mille
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
per prima cosa installa questo pacchetto NuGet nella tua applicazione.
https://www.nuget.org/packages/MySql.Data/

Poi usa questa stringa di connessione:
<add name="MiaConn" connectionString="Server=localhost;Database=cofscarldb01;Uid=root;Pwd=admin;" providerName="MySql.Data.MySqlClient" />


Ora usa questo codice C# per collegarti al database e inviare una query SQL.
string connectionString = ConfigurationManager.ConnectionStrings["MiaConn"].ConnectionString;
using (var conn = new MySqlConnection(connectionString))
{
   using (var cmd = conn.CreateCommand())
   {
      cmd.CommandText = "SELECT * FROM Tabella";
      using (var reader = cmd.ExecuteReader())
      {
          while (reader.Next())
          {
             //Qui leggi le colonne, es.
             string campo = reader["Campo"] as string;
          }
      }
   }
}


ciao,
Moreno

Enjoy learning and just keep making
13 messaggi dal 28 maggio 2018
Ciao Moreno
Grazie mille per l'aiuto
Il problema è che ho solo il codice compilato e quindi ho bisogno di capire quale stringa di connessione utilizzare.
Il codice sorgente è andato perso. Potrei decompilare il tutto ma sarebbe un lavoraccio
Grazie mille
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,

ho bisogno di capire quale stringa di connessione utilizzare.

Non ne ho idea, bisogna scoprirlo.

Vai nel pannello di controllo di Windows, poi Strumenti di amministrazione e poi apri sia "Origini dati ODBC (32bit)" che "Origini dati ODBC (64bit)".
Vai nella scheda "Driver" di entrambi e trova la voce che fa riferimento a MySql. Come si chiama esattamente? Scrivimelo qui, sia per il 32bit che per il 64bit.

Vedi un esempio in questa immagine.
https://emidius.eu/MIDOP/manual/images/uploading_data_into_mysql_clip_image020.png
Sii preciso nel riportare il nome perché poi andrà usato nella connection string.

ciao,
Moreno
Modificato da BrightSoul il 13 luglio 2019 11:04 -

Enjoy learning and just keep making
49 messaggi dal 20 luglio 2011
"Potrei decompilare il tutto ma sarebbe un lavoraccio" , hai provato con ILSpy?

"Imparare è un'esperienza, tutto il resto è solo informazione." -Albert Einstein-
13 messaggi dal 28 maggio 2018
64 bit: MySQL ODBC 8.0 ANSI Driver - 8.00.16.00
MySQL ODBC 8.0 Unicode Driver - 8.00.16.00

32 bit: Nulla per MySql

Di connessioni ne ho provate ma per ora nulla
Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
prova questa stringa di connessione.
Driver={MySQL ODBC 8.0 ANSI Driver};Server=localhost;Port=3306;Database=cofscarldb01;User=root;Password=admin;Option=3;


Se non funziona è probabilmente perché la tua applicazione va in esecuzione a 32bit, e sul tuo sistema non è installato alcun provider ODBC a 32bit per MySql, come hai avuto modo di appurare da "Origini dati ODBC (32bit)". Quindi, per prima cosa verifichiamo questa ipotesi. Vedi se la tua applicazione sta girando a 32 o 64 bit usando il Task Manager di Windows. Ecco dei modi per farlo.
https://www.tenforums.com/tutorials/60878-see-if-process-32-bit-64-bit-windows-10-a.html

Se effettivamente la tua applicazione va in esecuzione a 32bit, allora devi installare il provider ODBC a 32bit per MySql, dopo averlo scaricato da qui. Seleziona "Windows (x86, 32bit)" dalla casella "Select OS Version".
https://dev.mysql.com/downloads/connector/odbc/

Dopo l'installazione, per sicurezza, vai a verificare da "Origini dati ODBC (32bit)" che sia stato effettivamente installato e qual è il suo nome preciso che dovrai usare nella connection string.

ciao,
Moreno

Enjoy learning and just keep making

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.