Le ConnectionString per MySQL
Ultima revisione a cura di Sante Caserio, 27 Gennaio, 2010 00:34
Per connettersi a un database MySQL in ambiente Microsoft, spesso si utilizza una ConnectionString, cioè una stringa che contiene le informazioni necessarie per connettersi al server. La ConnectionString sarà leggermente diversa a seconda del driver che si vuole utilizzare.
Seguono esempi di ConnectionString per i principali driver. Naturalmente i termini in corsivo devono essere sostituiti con i dati corretti.
Esempio di ConnectionString con Connection/Net
Server=nome_host;Database=nome_db;Uid=nome_utente;Pwd=password;
Esempio di ConnectionString OLEDB
Provider=MySQLProv;Data Source=nome_db;User Id=nome_utente;Password=password;
Esempio di ConnectionString con ODBC 2.50
Driver={mySQL};Server=nome_host;Port=porta;Option=131072;Database=nome_db; User=nome_utente;Password=password;
Esempio di ConnectionString con ODBC 3.51
Driver={MySQL ODBC 3.51 Driver};Server=nome_host;Port=porta;Database=nome_db;User=nome_utente; Password=password;Option=3;
Esempio di ConnectionString con ODBC 5.1
Driver={MySQL ODBC 5.1 Driver};Server=nome_host;Port=porta;Database=nome_db; User=nome_utente;Password=password;Option=3;
Parametri aggiuntivi
Gli esempi sopra riportati utilizzano solo i parametri fondamentali. E’ possibile utilizzarne altri, dopo essersi accertati che il driver che si sta utilizzando li supporti (e che la sintassi sia la stessa).
- Socket – Per connettersi tramite i socket di UNIX. Bisogna indicare il nome del socket. Questo parametro sostituisce Server e Port. Esempio: S_ocket=MYSQL;_
- Named Pipe – Non esiste un parametro chiamato in questo modo, ma specificando come porta la -1 è possibile utilizzare i named pipe di Windows. Esempio: Server=localhost;Port=-1;
- Memoria condivisa – E’ possibile connettersi, su Windows, tramite la memoria condivisa assegnata a MySQL. Esempio: Shared Memory Name=MYSQL;
- Connection Timeout – E’ possibile specificare un tempo limite per il tentativo di connessione. Se viene superato, la connessione non viene stabilita e viene restituito un errore. Esempio: Connection Timeout=5;
- Default Command Timeout – Il tempo limite per l’esecuzione dei comandi, ove non diversamente specificato per un singolo comando. Esempio: default command timeout=20;
- CharSet – Il set di caratteri da utilizzare per la connessione corrente. Esempio: CharSet=UTF8;
- Ignore Prepare – Con Connector/Net, disabilita i prepared statement lato client per la connessione corrente. Esempio: Ignore Prepare=true;
Esempi di Connection String con DSN
E’ possibile impostare tutti i parametri necessari per la connessione in un DSN di sistema o in un file DSN. Questa tecnica non è specifica di MySQL, ma la riportiamo per completezza.
Se si usa un DSN di sistema:
DSN=nome_dsn;Uid=nome_utente;Pwd=password;
Se si utilizza un file DSN:
FILEDSN=c:\mysql.dsn;Uid=nome_utente;Pwd=password;