Il existe de nombreux articles sur l'ASP et les procédures stockées, mais je doute que les auteurs l'aient réellement pratiqué. J'ai lu beaucoup d'informations pertinentes lorsque j'étais au début et j'ai constaté que bon nombre des méthodes fournies n'étaient pas le cas dans la pratique. Pour les applications simples, ces matériaux peuvent être utiles, mais uniquement parce qu'ils sont tout simplement les mêmes, le plagiat mutuellement et que des applications légèrement plus complexes seront vagues.
Maintenant, j'accède essentiellement à SQLServer en appelant des procédures stockées. Le texte suivant est un résumé de la pratique, et j'espère que cela sera utile à tout le monde.
Une procédure stockée est une ou plusieurs commandes SQL stockées dans la base de données en tant qu'objets exécutables.
La définition est toujours abstraite. Les procédures stockées sont en fait un ensemble d'instructions SQL qui peuvent effectuer certaines opérations, mais cet ensemble d'instructions est placé dans la base de données (nous ne parlerons que de SQLServer ici). Si nous créons des procédures stockées et appelons des procédures stockées dans ASP, nous pouvons éviter de mélanger les instructions SQL avec le code ASP. Il y a au moins trois avantages à procéder:
Premièrement, améliore considérablement l'efficacité. La procédure stockée elle-même est très rapide et l'appel de procédure stockée peut réduire considérablement le nombre d'interactions avec la base de données.
Deuxièmement, améliorez la sécurité. Si les instructions SQL sont mixées dans le code ASP, une fois le code perdu, cela signifie que la structure de la bibliothèque est perdue.
Troisièmement, il est propice à la réutilisation des instructions SQL.
Dans ASP, les procédures stockées sont généralement appelées via des objets de commande. Selon différentes situations, cet article présente également d'autres méthodes d'appel. Pour plus de commodité de l'explication, la classification simple suivante est effectuée en fonction de l'entrée et de la sortie de la procédure stockée:
1. Renvoie uniquement les procédures stockées pour un seul ensemble d'enregistrements
Supposons qu'il existe la procédure stockée suivante (le but de cet article n'est pas de décrire la syntaxe T-SQL, de sorte que la procédure stockée ne donne que du code et n'explique pas):
/ * Sp1 * /
La copie de code est la suivante:
CreateProcedUredBo.GetUserList
comme
setNoCounton
Commencer
SELECT * FROMDBO. [UserInfo]
fin
aller
La procédure stockée ci-dessus obtient tous les enregistrements dans la table UserInfo et renvoie un ensemble d'enregistrements. Le code ASP pour appeler la procédure stockée via l'objet de commande est le suivant:
'** procédure d'appel via l'objet de commande **
Dimmycomm, myrst
SetMyComm = server.createObject ("adodb.command")
MyComm.ActiveConnection = MyContr'Mycont est la chaîne de connexion de la base de données
Mycomm.commandText = "getuserList" 'Spécifiez le nom de la procédure stockée
Mycomm.commandType = 4 'indique qu'il s'agit d'une procédure stockée
Mycomm.prepared = true 'exige que les commandes SQL soient compilées en premier
SetMyrst = myComm.excute
SetMyComm = rien
L'ensemble d'enregistrements obtenu par la procédure stockée est attribué à MyRST. Ensuite, Myrst peut être utilisé.
Dans le code ci-dessus, la propriété CommandType indique le type de demande, la valeur et la description sont les suivantes: