Connessione DSN-less a database Access®
Molti provider di hosting (come ad esempio Aruba), pur fornendo il supporto alle pagine ASP e database Microsoft Access®, non danno la possibilità di connettersi a questi attraverso connessioni DSN (Data Source Name).
In questo caso dobbiamo effettuare una connessione DSN-less.
Supponendo che il database si trovi nella cartella “/mdb-database” del nostro dominio (questa è proprio la scelta di Aruba) e che il file si chiami “db.mdb”, il codice da includere nella nostra pagina .asp è il seguente:
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/mdb-database/db.mdb")
%>
La variabile conn sarà quindi disponibile per le varie Execute che dovremo fare. Ad esempio, per una SELECT useremo il seguente codice:
<%
Set rs = conn.Execute("SELECT * FROM <tabella> WHERE <condizione> ORDER BY <campo>")
%>
Nel recordset rs saranno disponibili tutti i record della <tabella> che soddisfano la <condizione>, ordinati per <campo>. Una volta utilizzati i record estratti, ad esempio in un ciclo:
<%
rs.MoveFirst
do until rs.EOF
' operazioni
' ...
rs.MoveNext
loop
%>
Dopo aver effettuato le operazioni di select, insert, update e delete necessarie alla nostra applicazione bisogna ricordarsi di chiudere il recordset:
<% rs.Close Set rs = Nothing %>
e la connessione al database:
<% conn.Close Set conn = Nothing %>
