|
|
Publié sur 15/03/2019 22:45:21
|
|
|
|

préface
La dernière fois, j’avais prévu d’organiser tout le contenu de base de SQL, mais j’ai constaté que le temps tournait avant même que je m’en rende compte. Cet article se poursuit ci-dessous.
SMS
D’abord, créons les tables dont nous avons besoin
Exécutons d’abord une instruction SQL
Ce code soustrait le solde de 0001 par 1000 et le solde de 0002 par 1000. Mais nous avons ajouté des contraintes lors de la construction de la table, et le solde doit être supérieur ou égal à 10.
Les résultats sont les suivants :
Donc cette erreur d’exécution de code : «L’instruction UPDATE est en conflit avec la contrainte CHECK « CH_balance ». Le conflit se produit dans la base de données « DemoDb » avec le tableau « dbo. Banque », colonne 'solde'。” 。 Si une instruction est une erreur, alors l’autre a été exécutée avec succès.
Les résultats de la requête sont les suivants :
Nous verrons qu’une autre instruction SQL ne comporte aucune erreur, mais ne s’engage toujours pas avec succès. Voici ce que nous allons vous révéler.
#Transactions
Qu’est-ce que la transaction ? Strictement parlant, si une opération satisfait l’atomicité, la persistance, l’isolation et la cohérence, alors l’opération est appelée transaction. Soumettez automatiquement les transactions : dans SQL Server. Par défaut, chaque instruction SQL est une transaction. Afficher les transactions : Chaque transaction commence explicitement avec une instruction BEGIN TRANSACTION et se termine explicitement par une instruction COMMIT ou ROLLBACK.
La démo que nous venons de mentionner ci-dessus s’est terminée par un rollback, donc l’exécution de SQL n’a pas d’effet. Les données n’ont pas été modifiées avec succès.
Dans le développement et l’application proprement dits, nous mettons généralement en place une couche de transactions en dehors de l’instruction non-requête pour garantir l’intégrité et la cohérence des données selon les besoins réels. Soit tu fais tout, soit tu ne fais pas tout.
Il y a deux variables système qui enregistrent le SQL défectueux. - @@rowcount renvoie le nombre de lignes concernées, @@error renvoie le mauvais encodage
Utilisons ces deux variables système pour déterminer s’il y a une erreur dans SQL et exécutons les deux instructions SQL ci-dessus.
#Procédures stockées
Signification : Encapsuler un processus qui est réalisé (qui peut être complexe) dans un nom, puis utiliser ce nom pour effectuer le processus.
> Procédures stockées sans paramètre
>Procédures stockées avec paramètres
>Procédure stockée avec valeur de retour
Essayez de capturer dans la base de données
Il existe également des procédures stockées avec des paramètres par défaut, qui ont été mentionnées dans l’article précédent sur la pagination.
Épilogue
Les procédures stockées sont plus utilisées dans nos projets réels, de nombreux systèmes anciens, la logique métier est écrite dans des procédures stockées, et les personnes derrière la maintiennent et veulent simplement fracasser la tête du chien devant eux en quelques minutes. De manière générale, la logique métier est écrite dans le code, mais le nombre de fois où les données sont lues dans la base de données, et la logique métier est écrite dans le processus de stockage. L’année dernière, une série très complexe de logiques métier dans le projet de l’entreprise a été déplacée vers le processus de stockage, ce qui a multiplié la vitesse de plusieurs dizaines. Bien sûr, les circonstances particulières sont traitées de manière spéciale. L’application spécifique dépend du scénario réel.
(Note : Le contenu ci-dessus correspond aux notes d’étude de l’année, en cas de problème inapproprié, merci de le corriger !) )
|
Précédent:Je ressens le système de service client des grandes entreprisesProchain:Vidéo d’Andale HCNP et HCIE
|