Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Qu'est-ce que la procédure stockée et pourquoi une procédure stockée ?

Bonjour,

Dans cet article, je parlerai de la procédure stockée qui devrait être utilisée dans les grands projets.

Je pense qu'il devrait certainement être utilisé dans des projets à grande échelle, car la différence entre les procédures stockées ne se produit que dans les projets qui nécessitent des performances et une efficacité à grande échelle.

Procédure stockée en général, nous pouvons décrire comme suit :Les instructions SQL qui n'ont pas besoin d'être compilées après la première compilation et qui sont conservées dans le serveur de base de données. D'autre part, nous pouvons dire des instructions T-SQL stockées dans le serveur de base de données au lieu de la couche application.

Les procédures stockées, comme dans d'autres langages de programmation, peuvent être exécutées sans paramètres. Il est également appelé SP lorsqu'il est utilisé dans le développement d'applications. Toutes les opérations de base de données peuvent être effectuées avec des procédures stockées.

L'une des plus belles caractéristiques de l'utilisation des procédures stockées est peut-être de séparer les codes du langage de programmation des requêtes de base de données DML (Database Manipulation Language). De plus, une fois que vous avez écrit et compilé un SP, vous pouvez l'utiliser plusieurs fois.

En général, je vais énoncer les avantages des procédures stockées et pourquoi elles sont trop utilisées comme suit.

  • Les procédures stockées sont très rapides car elles sont conservées dans le serveur de base de données, la raison en est qu'elles n'ont pas besoin d'être compilées une fois de plus après avoir compilé une seule fois. Cependant, le code SQL que vous avez envoyé dans la couche Application doit être compilé encore et encore à chaque transaction. C'est une grande perte de temps pour les projets à grande échelle et les serveurs servant plus d'un client.
  • Fournit d'excellentes économies sur le trafic réseau.
  • Il fournit un paramétrage automatique des instructions SQL. Au lieu de remplacer tous les paramètres à l'endroit où les instructions SQL passent, vous pouvez uniquement modifier les paramètres ou les règles dans le SP. Cela corrige également la complexité des applications qui permet à votre application d'être modulaire.
  • Vous pouvez utiliser des commandes T-SQL en plus des expressions de programmation (if, while, for, etc.) lors de l'écriture de procédures stockées.
  • Les procédures stockées sont plus fiables car seuls les paramètres d'entrée et de sortie apparaissent dans la couche application. Si nous pensons que l'accès au serveur de base de données se fait généralement avec l'identifiant et le mot de passe, nous pouvons dire que l'utilisation de SP est un élément de confiance pour nos codes.

J'ai expliqué les avantages des procédures stockées qui me sont venus à l'esprit ci-dessus. Presque toutes les applications logicielles n'utilisent pas les codes sql normaux en général.

Comme je l'ai dit plus haut, être géré à partir d'un seul point et l'utiliser à plusieurs endroits et ne pas pouvoir voir facilement d'autres personnes rend les SP très avantageux.

Surtout quand on pense au trafic réseau, envoyer de nombreuses lignes de commandes SQL envoyées par le client au serveur au lieu d'envoyer le nom de la procédure stockée au serveur une fois signifie que le trafic réseau est très soulagé.

Il existe quatre types de procédures stockées.

  1. Procédure stockée système :  ils sont dans la base de données master et sp_ préfixe est utilisé pour ces procédures stockées. Ils sont utilisés dans les tâches administratives liées au système sur la base de données.
  2. Procédure stockée basée sur l'utilisateur : Ces procédures stockées sont utilisées pour nos applications. Vous pouvez supprimer ou modifier ces SP.
  3. Procédure stockée étendue : Généralement, il est compilé comme .dll et un type de procédure stockée qui compile les fonctionnalités du serveur de base de données. il est ajouté uniquement à la base de données principale.
  4. Procédure stockée CLR : Il s'agit d'une sorte de procédure stockée développée dans un environnement CLR utilisant n'importe quel langage.