Database
l'interfaccia utente di Dreamweaver CC e versioni successive è stata semplificata. Di conseguenza, potreste non trovare alcune delle opzioni descritte in questo articolo in Dreamweaver CC e versioni successive. Per ulteriori informazioni, vedete questo articolo.
Un'applicazione ASP stabilisce la connessione a un database mediante un driver ODBC (Open Database Connectivity) o mediante un provider OLE DB (Object Linking And Embedding Database). Il driver o il provider funge da interprete e consente la comunicazione tra l'applicazione Web e il database. La tabella seguente mostra alcuni driver utilizzabili con database di Microsoft Access, SQL Server e Oracle.
|
Database |
Driver di database |
|
Microsoft Access |
Driver per Microsoft Access (ODBC) Provider Microsoft Jet per Access (OLE DB) |
|
Microsoft SQL Server |
Driver per Microsoft SQL Server (ODBC) Provider di Microsoft SQL Server (OLE DB) |
|
Oracle |
Driver Microsoft per Oracle (ODBC) Provider Oracle per OLE DB |
Per la connessione al database potete utilizzare un DSN (Data Source Name) o una stringa di connessione. È necessario utilizzare una stringa di connessione se la connessione avviene tramite un provider OLE DB o un driver ODBC installato in un sistema Windows.
Un DSN è un identificatore formato da una sola parola, ad esempio myConnections, che indica il database e contiene tutte le informazioni necessarie per la connessione al database stesso. Il DSN viene definito in Windows. Potete utilizzare un DSN se la connessione avviene tramite un driver ODBC installato in un sistema Windows.
Una stringa di connessione è un'espressione che identifica il database ed elenca le informazioni necessarie per la connessione al database stesso, come mostrato nell'esempio seguente:
Driver={SQL Server};Server=Socrates;Database=AcmeMktg;
UID=wiley;PWD=roadrunner
la stringa di connessione è utilizzabile anche per la connessione mediante un driver ODBC installato in un sistema Windows, ma in questo caso risulta più semplice l'utilizzo di un DSN.
Potete comunicare con il database mediante un provider OLE DB (disponibile solo in Windows NT, 2000 o XP). La creazione di una connessione OLE DB diretta può migliorare la velocità della connessione, eliminando il livello ODBC esistente tra l'applicazione Web e il database.
Se non specificate un provider OLE DB per il database, ASP utilizza il provider OLE DB predefinito per i driver ODBC per comunicare con un driver ODBC, che a sua volta comunica con il database.
Esistono provider OLE DB diversi per i vari database. Potete ottenere i provider OLE DB per Microsoft Access e SQL Server scaricando e installando i pacchetti MDAC (Microsoft Data Access Components) 2.5 e 2.7 sul computer Windows che esegue IIS. Potete scaricare e installare gratuitamente i pacchetti MDAC dal sito Web di Microsoft.
installate MDAC 2.5 prima di installare MDAC 2.7.
Potete scaricare i provider OLE DB per database Oracle dal sito Web Oracle.
In Dreamweaver, la connessione OLE DB viene creata includendo un parametro Provider in una stringa di connessione. Ad esempio, di seguito sono elencati i parametri per i provider OLE DB più comuni rispettivamente per i database di Access, SQL Server e Oracle:
Provider=Microsoft.Jet.OLEDB.4.0;... Provider=SQLOLEDB;... Provider=OraOLEDB;...
Per il valore dei parametri del provider OLE DB in uso, consultate la documentazione del produttore del provider o rivolgetevi all'amministratore del sistema.
Una stringa di connessione combina le informazioni necessarie all'applicazione Web per connettersi a un database. Dreamweaver inserisce questa stringa negli script server-side della pagina per la successiva elaborazione da parte del server applicazioni.
Una stringa di connessione per i database di Microsoft Access e di SQL Server consiste in una combinazione dei seguenti parametri, separati da punti e virgola:
Provider
Specifica il provider OLE DB per il database. Ad esempio, di seguito sono elencati i parametri per i provider OLE DB più comuni rispettivamente per i database di Access, SQL Server e Oracle:
Provider=Microsoft.Jet.OLEDB.4.0;... Provider=SQLOLEDB;... Provider=OraOLEDB;...
Per il valore dei parametri del provider OLE DB in uso, consultate la documentazione del produttore del provider o rivolgetevi all'amministratore del sistema.
Se non includete un parametro Provider, viene utilizzato il provider OLE DB per ODBC predefinito ed è necessario specificare un driver ODBC appropriato per il database.
Driver
Specifica il driver ODBC da utilizzare se non si specifica un provider OLE DB per il database.
Server
Specifica il server su cui si trova il database di SQL Server se l'applicazione Web è in esecuzione su un server diverso.
Database
Il nome del database di SQL Server.
DBQ
Il percorso di un database basato su file (ad esempio, creato in Microsoft Access). Il percorso indicato si riferisce al server su cui è in esecuzione il file di database.
UID
Specifica il nome dell'utente.
PWD
Specifica la password dell'utente.
DSN
Il nome dell'eventuale origine dati. In base a come viene definito il DSN sul server, potete omettere gli altri parametri della stringa di connessione. Ad esempio, DSN=Results può essere una stringa di connessione valida se, quando si crea il DSN, si definiscono gli altri parametri necessari.
È possibile che le stringhe di connessione per gli altri tipi di database non utilizzino i suddetti parametri o che per essi prevedano nomi o utilizzi diversi. Per ulteriori informazioni, consultate la documentazione del produttore del database o rivolgetevi all'amministratore del sistema.
Di seguito è riportato un esempio di una stringa che crea una connessione ODBC a un database di Access di nome trees.mdb:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=C:\Inetpub\wwwroot\Research\trees.mdb
La seguente stringa crea invece una connessione OLE DB a un sistema di database SQL Server di nome Mothra, presente su un server chiamato Gojira:
Provider=SQLOLEDB;Server=Gojira;Database=Mothra;UID=jsmith; PWD=orlando8
questa sezione si basa sul presupposto che abbiate configurato un'applicazione ASP. Inoltre, presuppone l'impostazione di un database sul computer locale dell'utente o su un sistema al quale possiate accedere in rete o tramite FTP.
Potete utilizzare un DSN (data source name) per creare una connessione ODBC tra l'applicazione Web e il database. Un DSN è un nome che contiene tutti i parametri necessari per connettersi a un database specifico mediante un driver ODBC.
poiché in un DSN è possibile specificare solo un driver ODBC, se desiderate utilizzare un provider OLE DB è necessario utilizzare una stringa di connessione.
In Dreamweaver è possibile creare una connessione di database utilizzando un DSN definito localmente.
Per istruzioni, vedete i seguenti articoli presso il sito Web Microsoft:
Se il computer esegue Windows 2000, vedete l'articolo 300596 della Knowledge Base di Microsoft all'indirizzo http://support.microsoft.com/default.aspx?scid=kb;it-it;300596
Se il computer esegue Windows XP, vedete l'articolo 305599 della Knowledge Base di Microsoft all'indirizzo http://support.microsoft.com/default.aspx?scid=kb;it-it;305599
Se desiderate utilizzare un DSN locale ma non ne avete ancora definito uno, fate clic su Definisci per aprire l'utilità Amministratore origine dati ODBC di Windows.
non è possibile creare uno schema o un catalogo in Microsoft Access.
questa sezione si basa sul presupposto che abbiate configurato un'applicazione ASP. Inoltre, presuppone l'impostazione di un database sul computer locale dell'utente o su un sistema al quale possiate accedere in rete o tramite FTP.
Dreamweaver recupera solo i DSN del server creati con l'utilità Amministratore origine dati ODBC di Windows.
In Dreamweaver è possibile creare una connessione di database utilizzando un DSN definito su un computer remoto. Per utilizzare un DSN remoto, il DSN deve essere definito sul computer Windows su cui viene eseguito il server applicazioni (probabilmente IIS).
poiché in un DSN è possibile specificare solo un driver ODBC, se desiderate utilizzare un provider OLE DB è necessario utilizzare una stringa di connessione.
Per istruzioni, vedete i seguenti articoli presso il sito Web Microsoft:
Se il computer remoto esegue Windows 2000, vedete l'articolo 300596 della Knowledge Base di Microsoft all'indirizzo http://support.microsoft.com/default.aspx?scid=kb;it-it;300596
Se il computer remoto esegue Windows XP, vedete l'articolo 305599 della Knowledge Base di Microsoft all'indirizzo http://support.microsoft.com/default.aspx?scid=kb;it-it;305599
gli utenti Macintosh possono ignorare questo passaggio, in quanto tutte le connessioni di database utilizzano DSN sul server applicazioni.
non è possibile creare uno schema o un catalogo in Microsoft Access.
Potete utilizzare una connessione senza DSN per creare una connessione ODBC o OLE DB tra l'applicazione Web e il database. Questo tipo di connessione viene creato mediante una stringa di connessione.
Se il sito si trova presso un ISP e non si conosce il percorso completo del database, utilizzate il metodo MapPath dell'oggetto server ASP nella stringa di connessione.
gli utenti Macintosh possono ignorare questo passaggio, in quanto tutte le connessioni di database utilizzano il server applicazioni.
non è possibile creare uno schema o un catalogo in Microsoft Access.
Spesso gli sviluppatori ASP che operano con un ISP (Internet Service Provider, provider di servizi Internet) non conoscono il percorso fisico dei file che caricano, né il percorso del o dei file di database.
Se l'ISP non definisce un DSN per lo sviluppatore o tarda nella fornitura del DSN, è necessario adottare un metodo alternativo per la connessione ai file di database. Un'alternativa è la creazione di una connessione senza DSN al file di database; tuttavia per definire tale connessione è necessario conoscere il percorso fisico del file di database sul server dell'ISP.
Potete ottenere il percorso fisico di un file di database su un server mediante il metodo MapPath dell'oggetto server ASP.
le tecniche illustrate in questa sezione sono valide soltanto se il database è basato su file, ad esempio un database di Microsoft Access in cui i dati sono memorizzati in un file .mdb.
Una volta caricati i file su un server remoto mediante Dreamweaver, i file risiedono in una cartella della struttura directory locale del server. Ad esempio, su un server Microsoft IIS il percorso della home page potrebbe essere il seguente:
c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm
Questo percorso è detto “percorso fisico” del file.
Tuttavia, l'URL che apre il file non utilizza il percorso fisico, bensì il nome del server o del dominio seguito da un percorso virtuale, come nel seguente esempio:
www.plutoserve.com/jsmith/index.htm
Il percorso virtuale, /jsmith/index.htm, prende il posto del percorso fisico, c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm.
Quando lavorate con un ISP non è sempre possibile conoscere il percorso fisico dei file caricati. In genere gli ISP forniscono un host FTP, eventualmente una directory host e un nome e una password di login. Gli ISP specificano inoltre un URL per la visualizzazione delle pagine in Internet, ad esempio www.plutoserve.com/jsmith/.
Se conoscete l'URL, potete ottenere il percorso virtuale del file: si tratta del percorso che segue il nome del server o del dominio nell'URL. Una volta noto il percorso virtuale potete ottenere il percorso fisico del file sul server mediante il metodo MapPath.
MapPath accetta come argomento il percorso virtuale e restituisce il percorso fisico e il nome del file. La sintassi del metodo è la seguente:
Server.MapPath("/virtualpath")
Supponete che il percorso virtuale di un file sia /jsmith/index.htm. L'espressione seguente restituisce il percorso fisico:
Server.MapPath("/jsmith/index.htm")
Potete sperimentare il metodo MapPath nel modo seguente.
<%Response.Write(stringvariable)%>
Ad esempio:
<% Response.Write(Server.MapPath("/jsmith/index.htm")) %>
La pagina visualizza il percorso fisico del file sul server applicazioni, ad esempio:
c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm
Per ulteriori informazioni sul metodo MapPath, consultate la documentazione in linea fornita con Microsoft IIS.
Per creare una stringa di connessione senza DSN a un file di database presente su un server remoto, è necessario conoscere il percorso fisico del file. L'esempio seguente è una tipica stringa di connessione senza DSN per un database Microsoft Access:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=c:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb
Se non conoscete il percorso fisico dei file sul server remoto, potete ottenerlo utilizzando il metodo MapPath nella stringa di connessione.
Supponete che il percorso virtuale del database Microsoft Access sia /jsmith/data/statistics.mdb. Se utilizzate VBScript come linguaggio di creazione script, la stringa di connessione può essere la seguente:
“Driver={Microsoft Access Driver (*.mdb)};DBQ=” & Server.MapPath¬
("/jsmith/data/statistics.mdb")
La e commerciale (&) consente di concatenare due stringhe. La prima stringa è racchiusa tra virgolette e la seconda viene restituita dall'espressione Server.MapPath. Quando le due stringhe vengono combinate, viene creata la seguente stringa:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=C:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb
Se utilizzate JavaScript, l'espressione è identica, ma per concatenare le due stringhe dovete utilizzare un segno più (+) invece della e commerciale (&):
“Driver={Microsoft Access Driver (*.mdb)};DBQ=” + Server.MapPath¬
("/jsmith/data/statistics.mdb")
gli utenti Macintosh possono ignorare questo passaggio, in quanto tutte le connessioni di database utilizzano il server applicazioni.
se la connessione non viene stabilita, controllate la stringa di connessione oppure rivolgetevi all'ISP per verificare che il driver di database specificato nella stringa di connessione sia installato sul server remoto. Verificate inoltre che l'ISP disponga della versione più recente del driver. Ad esempio, un database creato in Microsoft Access 2000 non funziona con Microsoft Access Driver 3.5. È necessario Microsoft Access Driver versione 4.0 o successiva.
Quando create una connessione di database, Dreamweaver memorizza le informazioni sulla connessione in un file contenuto nella sottocartella Connections della cartella principale locale del sito. Potete modificare o eliminare le informazioni sulla connessione presenti nel file manualmente oppure nel modo seguente.
Dreamweaver aggiorna automaticamente il file include, che aggiorna tutte le pagine del sito che utilizzano la connessione.
per evitare messaggi di errore dopo l'eliminazione della connessione, aggiornate tutti i recordset che utilizzano la vecchia connessione facendo doppio clic sul nome del recordset nel pannello Associazioni e scegliendo una nuova connessione.
Accedi al tuo account