Maison > base de données > tutoriel mysql > Comment puis-je déclencher efficacement l'injection de données dans une deuxième table lors d'une INSERT dans SQL Server ?

Comment puis-je déclencher efficacement l'injection de données dans une deuxième table lors d'une INSERT dans SQL Server ?

Linda Hamilton
Libérer: 2024-12-20 16:02:10
original
425 Les gens l'ont consulté

How Can I Efficiently Trigger Data Injection into a Second Table Upon INSERT in SQL Server?

Déclenchement de l'injection de données dans une autre table lors de l'insertion dans SQL Server

Lors de la gestion des données dans SQL Server, les déclencheurs peuvent s'avérer extrêmement utiles pour automatiser les opérations et garantir l’intégrité des données. L'une de ces exigences est l'insertion des données d'une ligne nouvellement créée dans une table distincte. Considérez le scénario suivant :

Vous disposez d'un schéma d'adhésion implémenté dans ASP.NET et souhaitez suivre les détails de l'utilisateur, en particulier son ID utilisateur et son nom d'utilisateur, dans une autre table lors de son insertion dans la table aspnet_users. La question se pose : comment récupérer efficacement les valeurs de l'insertion la plus récente ?

Bien que la sélection par date de création la plus récente semble être une approche simple, cela peut s'avérer une solution peu élégante. Heureusement, il existe une méthode plus appropriée :

Utilisation de la variable de table INSERTED

SQL Server fournit une variable de table INSERTED qui contient des informations sur les lignes nouvellement insérées. Cette variable peut être exploitée pour remplir la table cible sans effort :

CREATE TRIGGER [yourNewTrigger] ON [yourSourcetable]
FOR INSERT
AS
BEGIN

    INSERT INTO [yourDestinationTable]
        (col1, col2, col3, user_id, user_name)
    SELECT
        'a', default, NULL, user_id, user_name
        FROM INSERTED;

END;
Copier après la connexion

Dans ce déclencheur, lors de son insertion dans votre table Source, la variable de table INSERTED est utilisée pour extraire les données requises (user_id et user_name) et les insérer dans yourDestinationTable ainsi que toutes les autres données souhaitées.

Cette approche offre un moyen propre et efficace de suivre les modifications des données et de maintenir la synchronisation des données entre plusieurs tables, garantissant ainsi que vous disposez de la informations nécessaires lorsque vous en avez besoin.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal