3 caso il metodo MAPPATH
Un terzo caso è la soluzione quando non siamo a conoscenza del percorso fisico del Db. Ed è una soluzione tra le più richieste.
Stringa di connessione (due esempi):
"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/swd_conn/db/SWD_Connessione2.mdb")
"PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & server.mappath("/swd_conn/db/SWD_Connessione2.mdb")
La stringa va scritta in un'unica riga; inoltre c'è una importante regola alla quale prestare attenzione:
Server.MapPath corrisponde al percorso della directory principale del server Web.
In base all'impostazione predefinita, tale percorso è C:\Inetpub\Wwwroot
Per cui se il nostro database è nella root principale la stringa corretta è:
"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/nomeCartella/database.mdb")
(il database è contenuto nella cartella nomeCartella che si trova
C:\Inetpub\Wwwroot\)
Ma se il database è contenuto in un "sito secondario", allora dovremo scrivere
"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/sito/nomeCartella/database.mdb")
(in questo caso il database è contenuto nella cartella db che si trova in
C:\Inetpub\Wwwroot\swd_conn
Connettendoci via FTP al provider possiamo verificare il nome delle cartelle.
In locale invece basterà vedere i nomi nel proprio personal server.
Al sito http://www.basic-ultradev.com è possibile comunque scaricare l'estensione Get database Path , di Tomas Much.
Questa estensione, applicata ad una pagina vuota, ci restituisce il path (percorso) del database, che poi possiamo scrivere nella nostra stringa DSNLess
|