Utilizzare comandi ASP per modificare un database in Dreamweaver

Ultimo aggiornamento il 25 apr 2024

Scoprite come utilizzare i comandi ASP in Dreamweaver per modificare un database e aggiungere ed eseguire una stored procedure.

Nota

L’interfaccia utente di Dreamweaver e versioni successive è stata semplificata. Di conseguenza, potreste non trovare alcune delle opzioni descritte in questo articolo in Dreamweaver e versioni successive. Per ulteriori informazioni, consultate questo articolo.

Informazioni sugli oggetti comando ASP

Un oggetto comando ASP è un oggetto server che esegue un'operazione su un database. L'oggetto può contenere qualsiasi istruzione SQL valida, inclusa una che restituisce un recordset o una che inserisce, aggiorna o elimina record in un database. Un oggetto comando può modificare la struttura di un database se l'istruzione SQL aggiunge o elimina una colonna in una tabella. Puoi anche utilizzare un oggetto comando per eseguire una stored procedure in un database.

Un oggetto comando può essere riutilizzabile, nel senso che il Server delle applicazioni può riutilizzare una singola versione compilata dell'oggetto per eseguire il comando più volte. Rendi riutilizzabile un comando impostando la proprietà Prepared dell'oggetto Command su vero, come nella seguente istruzione VBScript:

mycommand.Prepared = true

Se sai che il comando verrà eseguito più volte, avere una singola versione compilata dell'oggetto può rendere le operazioni sul database più efficienti.

Nota

Non tutti i provider di database supportano comandi preparati. Se il database non lo supporta, potrebbe restituire un errore quando imposti questa proprietà su true.Potrebbe anche ignorare la richiesta di preparare il comando e impostare la proprietà Prepared su false.

Un oggetto comando viene creato da script su una pagina ASP, ma Dreamweaver ti permette di creare oggetti comando senza scrivere una riga di codice ASP.

Usare comandi ASP per modificare un database

Puoi utilizzare Dreamweaver per creare oggetti comando ASP che inseriscono, aggiornano o eliminano record in un database. Fornisci all'oggetto comando l'istruzione SQL o la stored procedure che esegue l'operazione sul database.

In Dreamweaver, apri la pagina ASP che esegue il comando.
Apri il pannello Comportamenti server (Finestra > Comportamenti server), fai clic sul pulsante Più (+) e seleziona Comando.
Inserisci un nome per il comando, seleziona una connessione al database che contiene i record che desideri modificare e seleziona l'operazione di modifica che desideri che il comando esegua: Inserisci, Aggiorna o Elimina.

Dreamweaver avvia l'istruzione SQL in base al tipo di operazione che selezioni. Ad esempio, se selezioni Inserisci, la finestra di dialogo appare come nell'esempio seguente:

Immettere il Comando ASP
Immettere il Comando ASP

Scrivete l’istruzione SQL.

Per informazioni sulla scrittura di istruzioni SQL che modificano i database, consulta un manuale Transact‑SQL.

Utilizzate l’area Variabili per definire le variabili SQL. Fornisci il nome e il valore di runtime.Specificare il tipo e la dimensione di ogni variabile previene gli attacchi di injection.

L'esempio seguente mostra un'istruzione Insert che contiene tre variabili SQL. I valori di queste variabili vengono forniti dai parametri URL passati alla pagina, come definito nella colonna Valore di runtime dell'area Variabili.

Un’istruzione Inserisci che contiene tre variabili SQL
Un’istruzione Inserisci che contiene tre variabili SQL

Per ottenere il valore Size, utilizza il pannello Databases in Dreamweaver.Trova il database nel pannello Database e espandilo. Quindi, individua la tabella che stai utilizzando ed espandila.La tabella elenca le dimensioni dei campi. Ad esempio, potrebbe indicare ADDRESS (WChar 50). In questo esempio, 50 è la dimensione. Puoi trovare le dimensioni anche nell'applicazione del database.

Nota

I tipi di dati numerici, booleani e di data/ora utilizzano sempre -1 come dimensione.

Per determinare il valore Tipo, consulta la tabella seguente:

Tipo nel database

Tipo in Dreamweaver

Dimensione

Numerico (MS Access, MS SQL Server, MySQL)

Double

-1

Booleano, Sì/No (MS Access, MS SQL Server, MySQL)

Double

-1

Data/Ora (MS Access, MS SQL Server, MySQL)

DBTimeStamp

-1

Tutti gli altri tipi di campi di testo, compresi i tipi di dati di testo MySQL char, varchar e longtext

LongVarChar

verificare la tabella di database

Testo (MS Access) o nvarchar, nchar (MS SQL Server)

VarWChar

verificare la tabella di database

Memo (MS Access), ntext (MS SQL Server) o campi che supportano grandi quantità di testo

LongVarWChar

1073741823

Per ulteriori informazioni sul tipo e sulle dimensioni delle variabili SQL, consulta www.adobe.com/go/4e6b330a.

Chiudete la finestra di dialogo.

Dreamweaver inserisce codice ASP nella pagina che, quando eseguito sul server, crea un comando che inserisce, aggiorna o elimina record nel database.

Per impostazione predefinita, il codice imposta la proprietà Prepared dell'oggetto Command su true, che fa sì che il server applicazioni riutilizzi una singola versione compilata dell'oggetto ogni volta che viene eseguito il comando.Per modificare questa impostazione, passare alla vista Codice e cambiare la proprietà Prepared su falso.

Crea una pagina con un modulo HTML in modo che gli utenti possano inserire i dati dei record. Nel modulo HTML, includi tre campi di testo (txtCity, txtAddress e txtPhone) e un pulsante di invio. Il modulo utilizza il metodo GET e invia i valori dei campi di testo alla pagina che contiene il comando.

Informazioni sulle stored procedure

Sebbene tu possa utilizzare i comportamenti server per generare pagine che modificano i database, puoi anche utilizzare oggetti di manipolazione del database come stored procedure o oggetti comando ASP per generare le pagine.

Una stored procedure è un elemento di database riutilizzabile che esegue qualche operazione sul database. Una stored procedure contiene codice SQL che può, tra le altre cose, inserire, aggiornare o eliminare record. Le stored procedure possono anche alterare la struttura del database stesso. Ad esempio, puoi utilizzare una stored procedure per aggiungere una colonna di tabella o persino eliminare una tabella.

Una stored procedure può anche chiamare un'altra stored procedure, oltre ad accettare parametri di input e restituire più valori alla procedura chiamante sotto forma di parametri di output.

Una stored procedure è riutilizzabile nel senso che puoi riutilizzare una singola versione compilata della procedura per eseguire un'operazione di database più volte. Se sai che un'operazione di database verrà eseguita più di qualche volta—o la stessa operazione verrà eseguita da applicazioni diverse—utilizzare una stored procedure per eseguire tale operazione può rendere le operazioni del database più efficienti.

Nota

I database MySQL e Microsoft Access non supportano le stored procedure.

Aggiungere una stored procedure (ColdFusion) (CS6)

Puoi utilizzare una stored procedure per modificare un database. Una stored procedure è un elemento riutilizzabile del database che esegue alcune operazioni sul database.

Prima di utilizzare una stored procedure per modificare un database, assicurati che la stored procedure contenga SQL che modifichi il database in qualche modo. Per crearne e memorizzarne una nel database, consulta la documentazione del database e un buon manuale di Transact-SQL.

In Dreamweaver, apri la pagina che esegue la stored procedure.
Nel pannello Associazioni (Finestra > Associazioni), fai clic sul pulsante Più (+), quindi seleziona Stored Procedure.
Nel menu a comparsa Origine dati, seleziona una connessione al database contenente la stored procedure.
Inserite il nome utente e la password per l’origine dati ColdFusion.
Seleziona una stored procedure dal menu a comparsa Procedure.

Dreamweaver compila automaticamente tutti i parametri.

Seleziona un parametro e fai clic su Modifica se devi apportare modifiche.

Viene visualizzata la finestra di dialogo Modifica variabile stored procedure. Il nome della variabile modificata viene visualizzato nella casella Nome.

Nota

Devi inserire valori test per tutti i parametri di input della stored procedure.

Apportate le modifiche necessarie:
  • Selezionate una Direzione dal menu a comparsa. Una stored procedure può avere valori di input, valori di output o entrambi.

  • Selezionate un tipo SQL dal menu a comparsa. Immetti una variabile di ritorno, un valore di runtime e un valore di test.

Se la stored procedure accetta un parametro, fai clic sul pulsante Più (+) per aggiungere un parametro di pagina.
Nota

Devi inserire parametri di pagina corrispondenti per ogni valore di ritorno del parametro della stored procedure. Non aggiungere parametri di pagina a meno che non esista un valore di ritorno corrispondente.

Fai clic nuovamente sul pulsante Più (+) per aggiungere un altro parametro di pagina, se necessario.

Seleziona un parametro di pagina e fai clic sul pulsante Meno (-) per eliminare il parametro se necessario oppure fai clic su Modifica per apportare modifiche al parametro.
Seleziona l'opzione Restituisce recordset denominato, quindi inserisci un nome per il recordset; se la stored procedure restituisce un recordset, fai clic sul pulsante test per visualizzare il recordset restituito dalla stored procedure.

Dreamweaver esegue la stored procedure e visualizza il recordset, se presente.

Nota

Se la stored procedure restituisce un recordset e accetta parametri, devi inserire un valore nella colonna Valore predefinito nella casella Variabili per testare la stored procedure.

Nota

Puoi utilizzare valori di test diversi per generare recordset diversi.Per cambiare i valori di test, fai clic sul pulsante Modifica per Parametro e cambia il valore di test, oppure fai clic sul pulsante Modifica per Parametro di pagina e cambia il valore predefinito.

Seleziona l'opzione Returns Status Code Named e inserisci un nome per il codice di stato, se la stored procedure restituisce un valore di ritorno del codice di stato. Fate clic su OK.

Dopo la chiusura della finestra, Dreamweaver inserisce codice ColdFusion nella pagina che chiama una stored procedure nel database, quando il codice viene eseguito sul server. La stored procedure a sua volta esegue un'operazione del database, ad esempio inserisce un record.

Se la stored procedure richiede parametri, puoi creare una pagina che raccolga i valori dei parametri e li invii alla pagina con la stored procedure. Ad esempio, puoi creare una pagina che utilizza parametri URL o un modulo HTML per raccogliere i valori dei parametri dagli utenti.

Eseguire una stored procedure (ASP) (CS6)

Con le pagine ASP, devi aggiungere un oggetto comando a una pagina per eseguire una stored procedure. Per ulteriori informazioni sugli oggetti comando, vedi Informazioni sugli oggetti comando ASP.

In Dreamweaver, apri la pagina che eseguirà la stored procedure.
Nel pannello Associazioni (Finestra > Associazioni), fai clic sul pulsante Più (+), quindi seleziona Comando (Stored Procedure).

Viene visualizzata la finestra di dialogo Comando.

Inserisci un nome per il comando, seleziona una connessione al database contenente la stored procedure, quindi seleziona Stored Procedure dal menu a comparsa Tipo.
Seleziona la stored procedure espandendo il ramo Stored Procedures nella casella Elementi database, selezionando la stored procedure dall'elenco e facendo clic sul pulsante Procedura.
Nella tabella Variabili, inserite gli eventuali parametri necessari.

Non è necessario inserire parametri per nessuna variabile RETURN_VALUE.

Fate clic su OK.

Dopo aver chiuso la finestra di dialogo, il codice ASP viene inserito nella pagina.Quando il codice viene eseguito sul server, crea un oggetto comando che esegue una stored procedure nel database. La stored procedure a sua volta esegue un'operazione sul database, ad esempio l'inserimento di un record.

Per impostazione predefinita, il codice imposta la proprietà Prepared dell'oggetto Command su vero, che fa sì che il server applicazioni riutilizzi una singola versione compilata dell'oggetto ogni volta che la stored procedure viene eseguita. Se sai che il comando verrà eseguito più di alcune volte, avere una singola versione compilata dell'oggetto può migliorare l'efficienza delle operazioni sul database.Tuttavia, se il comando viene eseguito solo una o due volte, utilizzarne uno potrebbe effettivamente rallentare l'applicazione web perché il sistema deve fermarsi per compilare il comando.Per modificare l'impostazione, passa alla vista Codice e cambia la proprietà Prepared in false.

Nota

Non tutti i fornitori di database supportano i comandi preparati. Se il database non lo supporta, potresti ricevere un messaggio di errore quando esegui la pagina.Passate alla vista Codice e modificate la proprietà Preparato in false.

Se la stored procedure richiede parametri, puoi creare una pagina che raccolga i valori dei parametri e li invii alla pagina con la stored procedure. Ad esempio, puoi creare una pagina che utilizza parametri URL o un modulo HTML per raccogliere i valori dei parametri dagli utenti.