如何将记录从一个表更新到另一个表

时间:2015-09-29 07:17:35

标签: c# mysql sql-server

我有两张桌子:

1)NewAccount
2)Deposit

NewAccount表包含以下字段:

1)accNum作为主键 2)量

存款表包含以下字段:

1)accNum as foreign key
2)DepositAmount

我的问题是,如果我点击一个按钮,它应该将所有值都插入到存款表中,并且应该将该金额添加到NewAccount表的金额字段中。

以下是一个例子:

如果NewAccount的金额字段为500.00 如果我添加rs 400的存款金额。那么金额应该在金额字段的NewAccount表中更新为rs.900

3 个答案:

答案 0 :(得分:0)

在NewAccount表上创建更新触发器,这样一旦您更新NewAccount表,它应该触发Deposit上的更新,设置depositAmount = ammount

答案 1 :(得分:0)

    INSERT INTO NewAccount (accNum, ammount)
    SELECT accNum, DepositAmmount
    FROM Deposit a
    WHERE NOT EXISTS (SELECT 1 FROM NewAcount b where b.accNum=a.accNum)

    UPDATE c
    SET c.ammount=d.DepositAmmount + c.ammount
    FROM NewAccount c
    JOIN Deposit d on d on c.accNum=d.accNum

答案 2 :(得分:0)

在存款表上创建插入触发器,当您在存款表中插入记录时,将调用触发器并相对于accNum更新NewAccount金额。

delimiter |
CREATE TRIGGER updateamount AFTER INSERT ON Deposit
  FOR EACH ROW
  BEGIN
    UPDATE NewAccount set ammount = ammount + NEW.DepositAmmount where accNum = NEW.accNum;
  END;
|

delimiter ;