Numéro d'article: 300488 - Dernière mise à jour: mercredi 14 décembre 2005 - Version: 5.2

Comment faire pour exécuter SQL Server stockées les procédures à partir d'une page ASP

A noterCet article s'applique à un système d'exploitation différent de celui que vous utilisez. Le contenu de l'article qui ne vous concerne peut-être pas est désactivé.

Sommaire

Agrandir tout | Réduire tout

Résumé

Cet article explique comment exécuter SQL Server procédures stockées et utiliser les paramètres à partir d'une page ASP (Active Server Pages).

Cet article suppose que vous êtes familiarisé avec la procédure pour utiliser ActiveX Data Objects (ADO) dans une page ASP.

Plus d'informations

Exemple pas à pas

  1. Exécuter la requête suivante dans l'Analyseur de requêtes SQL Server 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 entrée (« @price) et renvoie un paramètre ("@Out) de sortie.

    note Par défaut, la base de données exemple Les Comptoirs et les bases de données de l'exemple pubs ne sont pas installés dans SQL Server 2005. Ces bases de données peuvent être téléchargés à partir du Centre de téléchargement Microsoft. Pour plus savoir comment faire pour télécharger la base de données exemple Les Comptoirs et la base de données exemple pubs, reportez-vous au adresse site Web de Microsoft à l'adresse suivante :
    http://msdn2.microsoft.com/en-us/library/ms143221.aspx (http://msdn2.microsoft.com/en-us/library/ms143221.aspx)
  2. L'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.
    1. Utilisez la méthode CreateParameter pour créer des paramètres dans Microsoft ActiveX Data Objects (ADO) comme suit :
      Set myParameter = Command.CreateParameter (Name, [Type], [Direction], [Size], [Value])
      						
    2. Ajouté le 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.
    3. Exécutez la commande pour passer les valeurs paramètre 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 qui sont utilisés dans cet exemple peuvent trouver dans le fichier Adovbs.inc. Ce fichier est installé pendant l'installation de Active Server Pages et placé dans le dossier \Aspsamp\Samples qui se trouve normalement dans votre dossier \Inetpub. Il est recommandé pratique 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 tenez à jour.
    <%@ LANGUAGE = VBScript %>
    <!-- #INCLUDE VIRTUAL="/ASPSAMP/SAMPLES/ADOVBS.INC" -->
    					
  3. Modifier la chaîne de connexion ADO en fonction de votre environnement.
  4. Enregistrer la page ASP et l'afficher dans le navigateur.

    Remarque : Il peut être difficile de déterminer comment correctement appeler une procédure stockée si vous êtes a pas connaissance des informations de paramètre de la procédure stockée. Sans les informations correctes, vous ne pouvez pas correctement créer les paramètres d'ADO. Vous pouvez utiliser la méthode Refresh de l'objet Parameter pour remplir la collection Parameters automatiquement, basé sur définition de la procédure stockée sur le serveur. Par exemple :
    Command.Parameters.Refresh
    					

Références

Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
306574  (http://support.microsoft.com/kb/306574/EN-US/ ) Comment faire pour appeler SQL Server de procédures stockées dans ASP.NET à l'aide de Visual Basic .NET
Pour plus d'informations sur la méthode Refresh, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
165156  (http://support.microsoft.com/kb/165156/EN-US/ ) Comment faire pour déterminer la configuration de paramètres pour une procédure stockée dans ASP
Pour savoir comment utiliser un fichier de liaison de données (.udl) pour créer une chaîne de connexion, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
189680  (http://support.microsoft.com/kb/189680/EN-US/ ) Comment faire pour utiliser des fichiers de liaison de données avec ADO
Pour plus d'informations sur l'extraction des jeux d'enregistrements à partir d'Oracle, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
229919  (http://support.microsoft.com/kb/229919/EN-US/ ) Comment faire pour récupérer un jeu d'enregistrements à partir d'un Oracle stockées procédure Utilisation dans ASP

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Active Server Pages 4.0
  • Microsoft SQL Server 2000 Standard
  • Microsoft SQL Server 7.0 Standard
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Mots-clés : 
kbmt kbfaq kbhowto KB300488 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 300488  (http://support.microsoft.com/kb/300488/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.