gototopgototop
 
Sei in: Home Page Articoli ASP Connessione ad un database con il metodo dsn less

Connessione ad un DataBase con il metodo DSN-less

Cosa vuol dire DSN-less?
DSN sta per: Data Source Name che significa, in italiano: Nome Origine dei Dati. Quindi, traducendo: senza una Origine dati. Proviamo a destreggiarci con questo acronimo!! :)

Nel momento in cui eseguiamo IIS sul nostro pc e dovendoci connettere ad un DataBase, cliccando su:
START --> STRUMENTI DI AMMINISTRAZIONE --> ORIGINE DATI (ODBC)
non facciamo altro che andare a "nominare" una origine di dati (il nostro Database appunto) dal quale saranno prelevate, mediante Recordset, tutte le informazioni per popolare il nostro sito web.
Problema: non tutti gli Host ci danno questo permesso di scrittura sul "loro" server, meno che mai avendo spazio gratis!!. Questo è possibile farlo sulla nostra macchina, in remoto non sempre questa operazione va a buon fine, per ragioni di sicurezza.
Allora si può ovviare nel seguente modo: utilizzare una stringa di connessione in modo tale che tutto funzioni regolarmente. La suddetta stringa viene creata così:
Creare l'oggetto Connection:
Dim Conn
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("database/file.mdb")
Fatto!! Ma adesso analizziamo il nostro codice.

La prima riga crea una variabile: l'oggetto "Connection";
la seconda inizializza lo stesso oggetto, con il metodo Server.CreateObject("ADODB.Connection");
la terza apre la connessione con il DataBase, specificando il tipo di DataBase a cui ci si connette (driver);
dbq: permette di specificare il Database a cui connettersi.
Cosa vuol dire la parte di codice: server.mapPath ?
Quando non si conosce il percorso fisico del DataBase si può utilizzare il metodo mapPath. Il vantaggio di questo metodo è legato al fatto che se il mio sito viene spostato in un'altra cartella, unità o addirittura su un altro server, non ho bisogno di modificare nulla nel mio codice.
Infatti la mia pagina fa riferimento ad una cartella chiamata "database". Che poi questa si trovi in c:\ piuttosto che in f:\ è poco importante.

È buona abitudine inserire il DataBase in una cartella, qui l'ho chiamata "database", ma cercate di darne uno un pò più strano, in modo tale che qualche hacker non riesca a fare il download della cartella in questione e modificarvi tutti i dati in esso contenuti.
È consigliabile dare anche uno username ed una password al vostro DataBase, in modo tale che siate l'unica persona ad avere l'accesso per l'inserimento e la modifica dei record.

Un' ultima operazione da fare circa la nostra connessione, è quella di "chiudere" la connessione stessa, in modo tale da liberare risorse sul server. Queste righe di codice vanno inserite alla fine della pagina, dopo il tag </html> di chiusura:

<%Conn.close()%>
<%Conn = Nothing%>

© www.extrowebsite.com - Grafica, layout, articoli e guide sono di esclusiva proprietà del webmaster - Tutti i diritti riservati