Exécuter SQL Server procédures stockées à partir d’une page ASP
Cet article explique comment exécuter SQL Server procédures stockées et utiliser des paramètres à partir d’une page ASP (Active Server Pages).
Version du produit d’origine : Internet Information Services
Numéro de la base de connaissances d’origine : 300488
Résumé
Cet article part du principe que vous êtes familiarisé avec la procédure d’utilisation d’ActiveX Data Objects (ADO) dans une page ASP.
Exemple pas à pas
Exécutez la requête suivante dans SQL Server’analyseur de requête ou SQL Server Management Studio sur la base de données Pubs :
CREATE proc MyProc ( @price smallint, @out smallint OUTPUT ) AS Select @out = count(*) from titles where price < @price GO
La procédure stockée (
MyProc
) prend un paramètre d’entrée (@price
) et retourne un paramètre de sortie (@out
).Remarque
Par défaut, l’exemple
Northwind
de base de données et les exemples de bases de données pubs ne sont pas installés dans SQL Server 2005. Ces bases de données peuvent être téléchargées à partir du Centre de téléchargement Microsoft. Pour plus d’informations sur le téléchargement de l’exemple de base de données Northwind et de l’exemple de base de données pubs, visitez le site web Microsoft suivant : Téléchargement des exemples de bases de données Northwind et pubsL’exemple de code ASP suivant appelle la procédure stockée nouvellement créée. Vous pouvez utiliser ce code ASP pour configurer le paramètre d’entrée et exécuter la requête.
Utilisez la
CreateParameter
méthode pour créer des paramètres dans ADO comme suit :Set myParameter = Command.CreateParameter (Name, [Type], [Direction], [Size], [Value])
Ajout du paramètre à la collection Parameters comme suit :
Command.Parameters.Append myParameter
Remarque
Les paramètres de la collection Parameters doivent correspondre à l’ordre des paramètres dans la procédure stockée.
Exécutez la commande pour passer des valeurs de paramètre dans et hors de la procédure stockée comme suit :
<% 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 %>
Remarque
Les constantes utilisées dans cet exemple se trouvent dans le fichier Adovbs.inc . Ce fichier est installé pendant l’installation des pages Active Server et placé dans le
\Aspsamp\Samples
dossier, qui se trouve normalement dans votre\Inetpub
dossier. Il est recommandé d’utiliser les constantes plutôt que les valeurs numériques lorsque vous appelez votre procédure stockée afin que votre code soit plus facile à lire et à gérer.<%@ LANGUAGE = VBScript %> <!-- #INCLUDE VIRTUAL="/ASPSAMP/SAMPLES/ADOVBS.INC" -->
Modifiez le chaîne de connexion ADO en fonction de votre environnement.
Enregistrez la page ASP et affichez-la dans le navigateur.
Remarque
Il peut être difficile de déterminer comment appeler correctement une procédure stockée si vous n’avez pas connaissance des informations de paramètre de la procédure stockée. Sans les informations correctes, vous ne pouvez pas créer correctement les paramètres ADO. Vous pouvez utiliser la méthode Refresh de l’objet Parameter pour remplir automatiquement la collection Parameters, en fonction de la définition de la procédure stockée sur le serveur. Par exemple :
Command.Parameters.Refresh
References
Pour plus d’informations, consultez Créer une application de données simple à l’aide de ADO.NET.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour