簡體   English   中英

SQL:當第一個數據庫中的表更新時,如何在第二個數據庫中自動更新表?

[英]SQL : How to update table Automatically in 2nd database when table in 1st database is updated?

我有數據庫db1db2在同一服務器上的兩個數據庫上都有表mytable

這兩個表都包含完全相同的列。

對於Ex:

SNo  |  fname  |   lname  | Mobile | Status

這兩個表都有一個列名Status

我應該怎么做,這樣,當列的值Status在表更新mytable數據庫db1然后列的值Status將自動表更新mytable數據庫db2

我不知道究竟是什么叫它。 也許觸發!

你必須在Mysql中創建一個觸發器。

例:

 CREATE TRIGGER upd_check BEFORE UPDATE ON account
    -> FOR EACH ROW
    -> BEGIN
    ->     IF NEW.amount < 0 THEN
    ->         SET NEW.amount = 0;
    ->     ELSEIF NEW.amount > 100 THEN
    ->         SET NEW.amount = 100;
    ->     END IF;
    -> END;

我使用上面的觸發器來更新兩個表。

看看這個教程

更新

您無法在SQL中觸發特定列更新,它將應用於行。

您可以將列的條件放在觸發器中,如下所示

DELIMITER $$
CREATE  TRIGGER  myTrigger AFTER UPDATE ON db1.mytable
FOR EACH ROW
BEGIN

if NEW.Status <> OLD.Status
then

update db2.mytable set Status = NEW.Status where sno = OLD.sno;

END if;

END $$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM