首頁 > 資料庫 > mysql教程 > SQL Server 觸發器如何將新行中的資料插入另一個表中?

SQL Server 觸發器如何將新行中的資料插入另一個表中?

Barbara Streisand
發布: 2024-12-25 03:16:09
原創
212 人瀏覽過

How Can SQL Server Triggers Insert Data from New Rows into Another Table?

使用SQL Server 觸發器將新行中的值插入另一個表

在SQL Server 中實作觸發器提供了一種便捷的方法來自動執行基於關於某些事件。如問題中所述,可以在 aspnet_users 表上設定觸發器來捕獲新插入並使用相關資訊填充另一個表。

為了從新插入的行中檢索值,SQL Server 提供了 inserted 偽表,其中包含插入行的列和資料。這樣就無需依賴比較時間戳記等可能不可靠的方法。

以下SQL 語句示範如何建立一個觸發器,將新行中的user_id 和user_name 值插入到單獨的表中:

CREATE TRIGGER yourNewTrigger ON yourSourcetable
FOR INSERT
AS

INSERT INTO yourDestinationTable
        (col1, col2    , col3, user_id, user_name)
    SELECT
        'a'  , default , null, user_id, user_name
        FROM inserted

go
登入後複製

在此範例中:

  • yourNewTrigger是您指派給觸發器的名稱。
  • yourSourcetable 是插入時將在其中執行觸發器的表的名稱。
  • yourDestinationTable是要插入值的表的名稱。

程式碼使用插入偽表以存取新行中的 user_id 和 user_name 欄位。它還會根據目標表結構的需要指定其他列值(「a」、「default」和 null)。

定義後,只要將新記錄新增至 yourSourcetable 表中,此觸發器就會自動執行,確保以最少的手動介入將對應的資料新增至 yourDestinationTable 表中。

以上是SQL Server 觸發器如何將新行中的資料插入另一個表中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板