当前位置:网站首页>Explication de la procédure stockée pour SQL Server
Explication de la procédure stockée pour SQL Server
2022-07-05 08:02:00 【Programmation de jeux】
Un.:Aperçu des procédures stockées
1.1 Concept de procédure stockée
Procédures stockées(Stored Procedure)Est précompiléSQLCollection de déclarations,Ces déclarations sont stockées sous un nom(Nom de la procédure stockée)En bas et en tant qu'unit é.La procédure stockée remplace l'exécution traditionnelle article par articleSQLLa façon dont les déclarations sont faites,Une procédure stockée peut contenir des requêtes、Insérer、Supprimer、Une série de manipulations telles que les mises à jourSQLDéclarations,Quand cette procédure stockée est appelée à s'exécuter,Ces opérations sont effectuées simultanément.
Les procédures stockées sont similaires à celles d'autres langages de programmation,Il peut accepter les paramètres d'entrée,Et renvoie plusieurs valeurs dans le format du paramètre de sortie à la procédure d'appel ou au lot;Contient pour effectuer des opérations dans la base de données(Y compris l'appel à d'autres procédures)Est devenu une déclaration;Renvoie une valeur d'état à la procédure d'appel ou au lot,Pour indiquer le succès ou l'échec(Et la cause de l'échec).
SQL ServerTrois types de procédures stockées sont disponibles
1.Procédures stockées par le système:Pour gérerSQL ServerProcédures stockées pour afficher des informations sur la base de données et les utilisateurs.
2.Procédure stockée personnalisée:L'utilisateur estSQL ServerEn adoptantSQLInstruction créer une procédure stockée.
3.Procédure stockée étendue:Par le langage de programmation(Par exempleC)Créer une routine externe,Et mettez cette routine dansSQL ServerUtilisé comme Procédure stockée.
1.2 Avantages des procédures stockées
La procédure stockée se comporte un peu comme suit:
(1)Les procédures stockées peuvent être utilisées de façon imbriquée,Prise en charge de la réutilisation du Code;
(2) Les procédures stockées peuvent être acceptées et exécutées dynamiquement avec des paramètres SQLDéclarations;
(3) Les procédures stockées sont plus SQL L'instruction s'exécute rapidement . La procédure stockée a été compilée au moment de la création ,À chaque exécution,Pas besoin de recompiler.EtSQL L'instruction doit être compilée à chaque exécution ;
(4) Les procédures stockées ont des caractéristiques de sécurité (Par exemple, permissions) Lien avec la propriété , Et peut être joint au certificat qui leur a été délivré . Les utilisateurs peuvent être autorisés à exécuter des procédures stockées sans avoir à avoir directement accès aux objets référencés dans les procédures stockées (C'est un peu comme ça.JAVA Encapsulation à l'intérieur de l'objet orienté ).
(5) Les procédures stockées permettent une programmation modulaire . Une fois la procédure stockée créée , Peut être appelé plus d'une fois dans le programme plus tard . Cela améliore la maintenabilité de l'application (C'est un peu comme ça.JAVA L'idée d'une architecture à plusieurs niveaux ), Et permettre aux applications d'accepter l'accès à la base de données .
(6) Les procédures stockées peuvent réduire le trafic réseau . Il faut des centaines de lignes SQL Le fonctionnement du Code d'instruction peut être effectué par une instruction qui exécute le Code de procédure , Sans envoyer des centaines de lignes de code sur le réseau .
(7) Les procédures stockées peuvent imposer la sécurité de l'application . Les procédures stockées paramétrées aident à protéger votre application contre SQL InjectionAttaque.
Description:SQL Injection C'est une façon d'attaquer , Il peut insérer un code malveillant qui sera transmis à SQL Server Dans la chaîne à analyser et à exécuter .Tout ce qui constitueSQL Le processus d'instruction doit être vérifié pour détecter les vulnérabilités d'injection ,Parce queSQL Server Toutes les requêtes syntaxiquement valides reçues par l'actionneur .
2.: Créer une procédure stockée
2.1 Créer des procédures stockées à l'aide d'outils de visualisation
Chaque outil de visualisation peut varier , Donc avec quel outil créer la procédure stockée , Aller à Baidu pour trouver des ressources devrait être beaucoup ici ne pas faire de démonstration
2.2 Utilisercreate procInstruction créer une procédure stockée
La syntaxe est la suivante:
create proc Procedure Proc_Student
@Proc_Son int
as
select * from Student where Sno = @Proc_Son
Trois: Gérer les procédures stockées
3.1 Exécuter la procédure stockée
Une fois la procédure stockée créée ,Peut passerEXECUTEExécution des commandes,Peut être abrégé enEXEC.
1.EXECUTE
EXECUTEyonglai zhixing Transact-SQL Chaîne de commande moyenne 、String、 Ou exécuter l'un des modules suivants :Procédures stockées par le système、Procédure stockée personnalisée par l'utilisateur、 Valeur scalaire fonction définie par l'utilisateur ou procédure stockée étendue .
2.UtiliserEXECUTEExécuter la procédure stockée
Par exemple, exécuter une procédure stockée Proc_Stu
exec Proc_Stu
3.2 Voir les procédures stockées
1.Utiliser sys.sql_modules Voir la définition de la procédure stockée ;
select * from sys.sql_modules
2.Utiliser OBJECT_DEFINITION Voir la définition de la procédure stockée
OBJECT_DEFINITION(object_id)
3.Utiliser sp_helptext Voir la définition de la procédure stockée
Afficher la définition des règles définies par l'utilisateur 、Par défaut、Non chiffréTransact-SQL Procédures stockées、Définition de l'utilisateurTransact-SQLFonctions、Déclencheur、Colonne calculée、CHECKContraintes、 Vue ou objet système ( Comme les procédures stockées par le système ).L'énoncé est le suivant:
sp_helptext 'Proc_Stu'
3.3 Modifier la procédure stockée
La modification d'une procédure stockée peut modifier un paramètre ou une instruction dans une procédure stockée ,Peut passerSQLDans une déclaration ALTER PROCEDURE Mise en oeuvre de l'énoncé. Bien que la procédure stockée soit supprimée et recréée , Vous pouvez également atteindre l'objectif de modifier la procédure stockée , .Mais toutes les permissions associées à cette procédure stockée seront perdues .
1.ALTER PROCEDURE Déclarations
ALTER PROCEDURE Instruction utilisée pour modifier l'exécution par CREATE PROCEDUR Processus de création d'énoncés . Lorsque cette instruction modifie une procédure stockée , Les permissions ne seront pas modifiées , N'affecte pas non plus les procédures stockées ou les déclencheurs associés .
Exemple:Le nom de la modification est“Proc_Stu”Procédures stockées pour.
ALTER PROCEDURE [dbo].[Proc_Stu]
@Son varchar(10)
as
select * from student
3.4 Renommer la procédure stockée
sp_rename 'Proc_Stu','Proc_StuInfo'
Attention!: Changer n'importe quelle partie du nom de l'objet peut détruire le script et la procédure stockée . Il n'est pas recommandé d'utiliser cette instruction pour renommer la procédure stockée 、Déclencheur、 Fonction ou vue personnalisée par l'utilisateur ; Au lieu de cela, supprimez l'objet , Puis Recréez l'objet avec un nouveau nom .
3.5 Supprimer la procédure stockée
DROP PROCENDURE Proc_Student
————————————————
Lien vers le texte original:https://blog.csdn.net/little_jecklove/article/details/108990153
Auteur:Apprendre comme naviguer contre l'eau,Si vous n'avancez pas, vous partirez.
Programmation de jeux,Un favori pour le développement de jeux~
Si l'image n'est pas affichée depuis longtemps,Veuillez utiliserChromeNavigateur du noyau.
边栏推荐
- Extended application of single chip microcomputer-06 independent key
- Define in and define out
- Improve lighting C program
- matlab timeserise
- Altium designer learning (I)
- Sql Server的存储过程详解
- Shape template matching based on Halcon learning [v] find_ cocoa_ packages_ max_ deformation. Hdev routine
- Communication standard -- communication protocol
- Global and Chinese market of urban rail connectors 2022-2028: Research Report on technology, participants, trends, market size and share
- UEFI development learning 6 - creation of protocol
猜你喜欢

Create inf module in AMI code

C, Numerical Recipes in C, solution of linear algebraic equations, LU decomposition source program

1-stm32 operation environment construction

Hardware 3 -- function of voltage follower

Network port usage
![C WinForm [change the position of the form after running] - Practical Exercise 4](/img/f7/ddaf5773295ca6929d39d7aa760d36.jpg)
C WinForm [change the position of the form after running] - Practical Exercise 4

L'étude a révélé que le système de service à la clientèle du commerce électronique transfrontalier a ces cinq fonctions!

Train your dataset with yolov4

Improve lighting C program

A simple method to prove 1/t Fourier transform
随机推荐
Measurement fitting based on Halcon learning [III] PM_ measure_ board. Hdev routine
C WinForm [display real-time time in the status bar] - practical exercise 1
C#,数值计算(Numerical Recipes in C#),线性代数方程的求解,LU分解(LU Decomposition)源程序
C language uses arrays to realize the intersection, union, difference and complement of sets
Class of color image processing based on Halcon learning_ ndim_ norm. hdev
找不到实时聊天软件?给你推荐电商企业都在用的!
研究发现,跨境电商客服系统都有这五点功能!
Altium designer 19.1.18 - change the transparency of copper laying
A simple method to prove 1/t Fourier transform
Step motor generates S-curve upper computer
Pointnet++ classification practice
1-stm32 operation environment construction
Consul installation
String judgment
C # joint configuration with Halcon
Network communication process
Live555 push RTSP audio and video stream summary (I) cross compilation
Global and Chinese market of core pallets 2022-2028: Research Report on technology, participants, trends, market size and share
C WinForm [view status bar -- statusstrip] - Practice 2
Global and Chinese markets for anesthesia, breathing and sleep apnea devices 2022-2028: Research Report on technology, participants, trends, market size and share