我正在学习JDBC,而且我正在尝试制作银行计划。我使用mySQL来创建包含用户和余额表的程序数据库。我想创建一个触发器,在用户表中输入数据时自动创建数据
到目前为止,我已经制作了不起作用的代码:
create trigger onInputUsers before insert on users
for each row
begin
insert into finances (id,balance,debt) values (null,0,0);
end;
答案 0 :(得分:1)
注意:未提供表格的表格结构,因此假设有userid
,balance
和debt
等列在你的桌子上。
可以有两个触发器可以满足您的要求(一个在创建新用户时创建记录,另一个在用户进行事务时创建记录)!
这会处理您的记录的审核条目的创建,这不是非常需要(如果您要求我的意见)
DELIMITER $$
CREATE TRIGGER USER_FINANCE_TRIGGER BEFORE INSERT ON users
FOR EACH ROW
BEGIN
INSERT INTO finances (id, userid, balance, debt) VALUES (null, OLD.userid, 0, 0);
END$$
DELIMITER;
它处理用用户活动更新finances
表:
DELIMITER $$
CREATE TRIGGER USER_FINANCE_UPDATE_TRIGGER BEFORE UPDATE ON balance
FOR EACH ROW
BEGIN
INSERT INTO finances (id, userid, balance, debt) VALUES (null, OLD.userid, OLD.balance, OLD.debt);
END$$
DELIMITER;
希望这能很好地回答你的问题!