Aujourd'hui, l'éditeur partagera avec vous comment appeler les procédures stockées dans ASP. Les amis intéressés en apprendront avec l'éditeur!
1 Il s'agit également de la méthode la plus simple, avec deux paramètres d'entrée, pas de valeur de retour:
set connection = server.createObject ("adodb.connection")
connexion.open Somedsn
Connection.Exécute "Procname VarValue1, VarValue2"
'Effacer tous les objets dans rien, libérer des ressources
connexion.close
Définir la connexion = rien
2 Si vous souhaitez retourner l'ensemble de coffre-enregistrement:
set connection = server.createObject ("adodb.connection")
connexion.open Somedsn
set rs = server.createObject ("adodb.recordSet")
Rs.Open "EXEC Procname Varvalue1, VarValue2", connexion
'Effacer tous les objets dans rien, libérer des ressources
Rs.Close
connexion.close
Définir RS = rien
Définir la connexion = rien
3 Les deux méthodes ci-dessus ne peuvent pas avoir de valeur de retour (sauf RecordSet). Si vous souhaitez obtenir la valeur de retour, vous devez utiliser la méthode de commande.
Tout d'abord, il existe deux types de valeurs de retour. L'une consiste à renvoyer directement une valeur dans la procédure stockée, tout comme les fonctions des valeurs de retour C et VB; L'autre consiste à renvoyer plusieurs valeurs et les noms de variables qui stockent ces valeurs doivent être spécifiés d'abord dans les paramètres d'appel.
Cet exemple traitera de plusieurs paramètres, des paramètres d'entrée, des paramètres de sortie, des ensembles de disques de retour et une valeur de retour directe (est-ce suffisant?)
La procédure stockée est la suivante:
Utiliser des pubs
ALLER
- Créer des procédures stockées
Créer une procédure SP_PUBSTEST
- Définissez trois variables de paramètres, notez la troisième, la marque spéciale est utilisée pour la sortie
@au_lname varchar (20),
@intid int,
@intidout int
COMME
Sélectionnez @intidout = @intid + 1
SÉLECTIONNER *
Des auteurs
Où aU_lname comme @au_lname + '%'
- Récupérer une valeur directement
Retourner @intid + 2
Le programme ASP qui appelle la procédure stockée est le suivant:
Cmdsp dim
Adors Dim
DIM ADCMDSPSTOREDPROC
Talent adparaMreturnvalue
Adparaminput faible
Adparamoutput DIM
Adoineur faible
Baisser
Ovale
Adofield sombre
Advarchar de DIM
'Ces valeurs sont des constantes prédéfinies dans VB et peuvent être appelées directement, mais ne sont pas prédéfinies dans VBScript
adcmdspstoredProc = 4
adparAmreturnValue = 4
adparaminput = 1
adparamoutput = 2
AdInteger = 3
Advarchar = 200
ival = 5
ovale = 3
'Créer un objet de commande
Définir cmdsp = server.createObject ("adodb.command")
'Créer un lien
Cmdsp.activeConnection = "Driver = {SQL Server}; server = (local); uid = sa; pwd =; database = pubs"
«Définissez le nom de l'appel de l'objet de commande
Cmdsp.commandText = "sp_pubstest"
«Définir le type d'appel de commande comme procédure stockée (ADCMDSPSTOREDPROC = 4)
CMDSP.CommandType = ADCMDSPSTORYPROC
'Ajouter des paramètres à l'objet de commande
'Définir la procédure stockée a une valeur de retour directe et est un entier, la valeur par défaut est 4
CMDSP.Parameters.APPEND CMDSP.CREATEPARAMETER ("RETOUR_VALUE", ADINTEGER, ADPARAMRETURNVALUE, 4)
'Définir un paramètre d'entrée de caractères
Cmdsp.parameters.append cmdsp.createParameter ("@ aU_lname", advarchar, adparaminput, 20, "m")
'Définir un paramètre d'entrée entier
Cmdsp.parameters.append cmdsp.createParameter ("@ intid", adointeger, adparaminput ,, ival)
'Définir un paramètre de sortie entier
CMDSP.Parameters.APPEND CMDSP.CREATEPARAMETER ("@ INTIDOUT", ADINTEGER, ADPARAMOUTPUT, OVAL)
'Exécutez la procédure stockée et obtenez l'ensemble d'enregistrements de retour
Définir Adors = CMDSP.Execute
'Imprimez chaque enregistrement, les champs dans lesquels sont virtuels, vous pouvez l'ignorer
Bien qu'il ne s'agisse pas d'ador
pour chaque Adofield dans Adors.
Réponse.write adofield.name & "=" & adofield.value & "
"& vbcrlf
Suivant
Réponse.WRITE "
"
Adors.MoVeNext
Se promener
'Imprimez deux valeurs de sortie:
Réponse.WRITE "
@intidout = "& cmdsp.parameters (" @ intidout "). Value &"
"
Réponse.WRITE "
Return value = "& cmdsp.parameters (" return_value "). Value &"
"
'Big Nettoyage
Définir les adors = rien
Définir cmdsp.activeConnection = rien
Définir CMDSP = Rien
%>
Il y a d'autres façons, qui sont un peu absentes, et j'en parlerai plus tard
Cet article a fait référence à de nombreux articles et ne sera pas répertorié ici.
Ce qui précède est une introduction à la façon d'appeler les procédures stockées dans ASP. J'espère que les connaissances et les matériaux pertinents compilés par l'éditeur vous seront utiles. Pour plus de contenu, veuillez continuer à faire attention au site Web de la chaîne technologique Wuxin!