Eseguire SQL Server stored procedure da una pagina ASP
Questo articolo illustra come eseguire SQL Server stored procedure e usare i parametri da una pagina ASP (Active Server Pages).
Versione originale del prodotto: Internet Information Services
Numero KB originale: 300488
Riepilogo
Questo articolo presuppone che si abbia familiarità con la procedura per usare ActiveX Data Objects (ADO) in una pagina ASP.
Esempio dettagliato
Eseguire la query seguente in SQL Server Query Analyzer o SQL Server Management Studio nel database Pubs:
CREATE proc MyProc ( @price smallint, @out smallint OUTPUT ) AS Select @out = count(*) from titles where price < @price GO
La stored procedure (
MyProc
) accetta un parametro di input (@price
) e restituisce un parametro di output (@out
).Nota
Per impostazione predefinita, il
Northwind
database di esempio e i database di esempio pubs non vengono installati in SQL Server 2005. Questi database possono essere scaricati dall'Area download Microsoft. Per altre informazioni su come scaricare il database di esempio Northwind e il database di esempio pubs, visitare il seguente sito Web Microsoft: Download di database di esempio Northwind e pubsIl codice di esempio ASP seguente chiama la stored procedure appena creata. È possibile usare questo codice ASP per configurare il parametro di input ed eseguire la query.
Usare il
CreateParameter
metodo per creare parametri in ADO come indicato di seguito:Set myParameter = Command.CreateParameter (Name, [Type], [Direction], [Size], [Value])
Il parametro è stato aggiunto all'insieme Parameters come indicato di seguito:
Command.Parameters.Append myParameter
Nota
I parametri nell'insieme Parameters devono corrispondere all'ordine dei parametri nella stored procedure.
Eseguire il comando per passare i valori dei parametri all'interno e all'esterno della stored procedure come indicato di seguito:
<% Dim cmd Dim ln Dim retCount Set cmd = Server.CreateObject("ADODB.Command") With cmd .ActiveConnection = "Paste your connection string here" .Commandtext = "MyProc" .CommandType = adCmdStoredProc .Parameters.Append .CreateParameter("@price", adSmallInt, adParamInput, 10).Parameters("@price") = 22 .Parameters.Append .CreateParameter("@retValue", adSmallInt, adParamOutput, 10).Execute ln, , adExecuteNoRecords retCount = .Parameters("@retValue") End with Response.Write retcount Set cmd = Nothing %>
Nota
Le costanti usate in questo esempio sono disponibili nel file Adovbs.inc . Questo file viene installato durante l'installazione di Active Server Pages e inserito nella
\Aspsamp\Samples
cartella , che in genere si trova nella\Inetpub
cartella. È consigliabile usare le costanti anziché i valori numerici quando si chiama la stored procedure per semplificare la lettura e la gestione del codice.<%@ LANGUAGE = VBScript %> <!-- #INCLUDE VIRTUAL="/ASPSAMP/SAMPLES/ADOVBS.INC" -->
Modificare la stringa di connessione ADO in base all'ambiente in uso.
Salvare la pagina ASP e visualizzarla nel browser.
Nota
Può essere difficile determinare come chiamare correttamente una stored procedure se non si è a conoscenza delle informazioni sui parametri della stored procedure. Senza le informazioni corrette, non è possibile creare correttamente i parametri ADO. È possibile utilizzare il metodo Refresh dell'oggetto Parameter per popolare automaticamente l'insieme Parameters in base alla definizione della stored procedure nel server. Ad esempio:
Command.Parameters.Refresh
Riferimenti
Per altre informazioni, vedere Creare un'applicazione dati semplice usando ADO.NET.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per