ホームページ > データベース > mysql チュートリアル > SQL Server での INSERT 時に 2 番目のテーブルへのデータ注入を効率的にトリガーするにはどうすればよいですか?

SQL Server での INSERT 時に 2 番目のテーブルへのデータ注入を効率的にトリガーするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-20 16:02:10
オリジナル
385 人が閲覧しました

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

SQL Server への挿入時に別のテーブルへのデータ挿入をトリガーする

SQL Server でデータを管理する場合、トリガーは操作の自動化に非常に役立ちます。データの整合性を確保します。そのような要件の 1 つは、新しく作成された行のデータを別のテーブルに挿入することです。次のシナリオを考えてみましょう。

ASP.NET にメンバーシップ スキーマが実装されており、aspnet_users テーブルへの挿入時に別のテーブルでユーザーの詳細、具体的にはユーザー ID とユーザー名を追跡したいと考えています。疑問が生じます: 最新の挿入から値を効率的に取得するにはどうすればよいですか?

最新の作成日による選択は単純なアプローチのように見えますが、洗練されたソリューションとは言えない可能性があります。ありがたいことに、より適切な方法が存在します。

INSERTED テーブル変数の使用

SQL Server は、新しく挿入された行に関する情報を含む INSERTED テーブル変数を提供します。この変数を利用すると、ターゲット テーブルに簡単にデータを取り込むことができます。

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;
ログイン後にコピー

このトリガーでは、Sourcetable への挿入時に、INSERTED テーブル変数を使用して必要なデータ (user_id と user_name) を抽出し、Sourcetable に挿入します。 yourDestinationTable とその他の必要なデータ。

このアプローチは、データの変更を追跡し、データを維持するためのクリーンで効果的な方法を提供します。複数のテーブル間の同期により、必要なときに必要な情報を確実に入手できます。

以上がSQL Server での INSERT 時に 2 番目のテーブルへのデータ注入を効率的にトリガーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート